Skip to content

Commit afee192

Browse files
author
A. Täffner
committed
fixed the cronjob and noticed a bug in ISPC but not able to report as FlySpray is offline
1 parent 290311f commit afee192

File tree

1 file changed

+6
-3
lines changed

1 file changed

+6
-3
lines changed

server/lib/classes/cron.d/550-bind_dnssec.inc.php

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,12 +48,14 @@ public function onRunJob() {
4848
//TODO : change this when distribution information has been integrated into server record
4949
$filespre = (file_exists('/etc/gentoo-release')) ? 'pri/' : 'pri.';
5050

51-
$soas = $app->db->queryAllRecords('SELECT * FROM dns_soa WHERE dnssec_wanted=\'Y\' AND dnssec_initialized=\'Y\' AND dnssec_last_signed < '.(time()-(3600*24*5-900))); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance)
51+
$soas = $app->db->queryAllRecords('SELECT * FROM dns_soa WHERE dnssec_wanted=\'Y\' AND dnssec_initialized=\'Y\' AND dnssec_last_signed < '.(time()-(3600*24*5)+900)); //Resign zones every 5 days (expiry is 16 days so we have enough safety, 15 minutes tolerance)
5252

53-
while ($data = next($soas)) {
53+
foreach ($soas as $data) {
5454
$domain = substr($data['origin'], 0, strlen($data['origin'])-1);
5555
if (!file_exists($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain)) return false;
5656

57+
$app->log('DNSSEC Auto-Resign: Resigning zone '.$domain, LOGLEVEL_INFO);
58+
5759
$zonefile = file_get_contents($dns_config['bind_zonefiles_dir'].'/'.$filespre.$domain);
5860
$keycount=0;
5961
foreach (glob($dns_config['bind_zonefiles_dir'].'/K'.$domain.'*.key') as $keyfile) {
@@ -68,14 +70,15 @@ public function onRunJob() {
6870
exec('cd '.escapeshellcmd($dns_config['bind_zonefiles_dir']).';'.
6971
'/usr/sbin/dnssec-signzone -A -e +1382400 -3 $(head -c 1000 /dev/random | sha1sum | cut -b 1-16) -N increment -o '.escapeshellcmd($domain).' -t '.$filespre.escapeshellcmd($domain));
7072

71-
//Write Data back ino DB
73+
//Write Data back into DB
7274
$dnssecdata = "DS-Records:\n".file_get_contents($dns_config['bind_zonefiles_dir'].'/dsset-'.$domain.'.');
7375
$dnssecdata .= "\n------------------------------------\n\nDNSKEY-Records:\n";
7476
foreach (glob($dns_config['bind_zonefiles_dir'].'/K'.$domain.'*.key') as $keyfile) {
7577
$dnssecdata .= file_get_contents($keyfile)."\n\n";
7678
}
7779

7880
$app->db->query('UPDATE dns_soa SET dnssec_info=\''.$dnssecdata.'\', dnssec_initialized=\'Y\', dnssec_last_signed=\''.time().'\' WHERE id='.$data['id']);
81+
$data = next($soas);
7982
}
8083

8184
parent::onRunJob();

0 commit comments

Comments
 (0)