unify "reloading" the dns daemon

This commit is contained in:
Daniel Reichelt
2016-06-17 23:01:37 +02:00
parent 50317da185
commit b4f90730cc
3 changed files with 18 additions and 9 deletions

View File

@@ -162,6 +162,20 @@ abstract class DnsBase
return $domains; return $domains;
} }
public function reloadDaemon()
{
// reload DNS daemon
$cmd = Settings::Get('system.bindreload_command');
$cmdStatus = 1;
safe_exec(escapeshellcmd($cmd), $cmdStatus);
if ($cmdStatus === 0) {
$this->_logger->logAction(CRON_ACTION, LOG_INFO, Settings::Get('system.dns_server') . ' daemon reloaded');
} else {
$this->_logger->logAction(CRON_ACTION, LOG_ERR, 'Error while running `' . $cmd .
'`: exit code (' . $cmdStatus . ') - please check your system logs');
}
}
public function writeDKIMconfigs() public function writeDKIMconfigs()
{ {
if (Settings::Get('dkim.use_dkim') == '1') { if (Settings::Get('dkim.use_dkim') == '1') {

View File

@@ -56,10 +56,7 @@ class bind extends DnsBase
fwrite($bindconf_file_handler, $this->_bindconf_file); fwrite($bindconf_file_handler, $this->_bindconf_file);
fclose($bindconf_file_handler); fclose($bindconf_file_handler);
$this->_logger->logAction(CRON_ACTION, LOG_INFO, 'froxlor_bind.conf written'); $this->_logger->logAction(CRON_ACTION, LOG_INFO, 'froxlor_bind.conf written');
safe_exec(escapeshellcmd(Settings::Get('system.bindreload_command'))); $this->reloadDaemon();
$this->_logger->logAction(CRON_ACTION, LOG_INFO, 'Bind9 reloaded');
$domains_dir = makeCorrectDir(Settings::Get('system.bindconf_directory') . '/domains/');
$this->_logger->logAction(CRON_ACTION, LOG_INFO, 'Task4 finished'); $this->_logger->logAction(CRON_ACTION, LOG_INFO, 'Task4 finished');
} }

View File

@@ -47,11 +47,9 @@ class pdns extends DnsBase
$this->walkDomainList($domain, $domains); $this->walkDomainList($domain, $domains);
} }
$this->_logger->logAction(CRON_ACTION, LOG_INFO, 'Database updated'); $this->_logger->logAction(CRON_ACTION, LOG_INFO, 'PowerDNS database updated');
$this->reloadDaemon();
// reload Bind $this->_logger->logAction(CRON_ACTION, LOG_INFO, 'Task4 finished');
safe_exec(escapeshellcmd(Settings::Get('system.bindreload_command')));
$this->_logger->logAction(CRON_ACTION, LOG_INFO, 'pdns reloaded');
} }
private function walkDomainList($domain, $domains) private function walkDomainList($domain, $domains)