- Updated to 1.4.0b1 - Patch for NSEC3PARAM TTL - Cron job to assist narrowing ods-enforcerd timing differences
69 lines
2.6 KiB
Diff
69 lines
2.6 KiB
Diff
Modified: trunk/OpenDNSSEC/signer/src/signer/namedb.c
|
|
===================================================================
|
|
- --- trunk/OpenDNSSEC/signer/src/signer/namedb.c 2012-08-09 09:36:35
|
|
UTC (rev 6514)
|
|
+++ trunk/OpenDNSSEC/signer/src/signer/namedb.c 2012-08-09 14:19:56
|
|
UTC (rev 6515)
|
|
@@ -215,9 +215,11 @@
|
|
} else if (ods_strcmp(format, "datecounter") == 0) {
|
|
soa = (uint32_t) time_datestamp(0, "%Y%m%d", NULL) * 100;
|
|
if (!util_serial_gt(soa, prev)) {
|
|
- - ods_log_warning("[%s] unable to use datecounter as serial: %u "
|
|
- - "does not increase %u. Serial set to %u", db_str, soa, prev,
|
|
- - (prev+1));
|
|
+ if (!db->is_initialized) {
|
|
+ ods_log_warning("[%s] unable to use datecounter as serial: %u "
|
|
+ "does not increase %u. Serial set to %u", db_str, soa, prev,
|
|
+ (prev+1));
|
|
+ }
|
|
soa = prev + 1;
|
|
}
|
|
} else if (ods_strcmp(format, "counter") == 0) {
|
|
|
|
Modified: trunk/OpenDNSSEC/signer/src/signer/tools.c
|
|
===================================================================
|
|
- --- trunk/OpenDNSSEC/signer/src/signer/tools.c 2012-08-09 09:36:35 UTC
|
|
(rev 6514)
|
|
+++ trunk/OpenDNSSEC/signer/src/signer/tools.c 2012-08-09 14:19:56 UTC
|
|
(rev 6515)
|
|
@@ -39,6 +39,7 @@
|
|
#include "signer/tools.h"
|
|
#include "signer/zone.h"
|
|
|
|
+#include <errno.h>
|
|
#include <sys/types.h>
|
|
#include <sys/wait.h>
|
|
#include <unistd.h>
|
|
@@ -213,7 +214,7 @@
|
|
/* kick the nameserver */
|
|
if (zone->notify_ns) {
|
|
int status;
|
|
- - pid_t pid;
|
|
+ pid_t pid, wpid;
|
|
ods_log_verbose("[%s] notify nameserver: %s", tools_str,
|
|
zone->notify_ns);
|
|
/** fork */
|
|
@@ -236,9 +237,20 @@
|
|
ods_log_debug("[%s] notify nameserver process forked",
|
|
tools_str);
|
|
/** wait for completion */
|
|
- - while (wait(&status) != pid) {
|
|
- - ;
|
|
+ while((wpid = waitpid(pid, &status, 0)) <= 0) {
|
|
+ if (errno != EINTR) {
|
|
+ break;
|
|
+ }
|
|
}
|
|
+ if (wpid == -1) {
|
|
+ ods_log_error("[%s] notify nameserver failed: waitpid() ",
|
|
+ "failed (%s)", tools_str, strerror(errno));
|
|
+ } else if (!WIFEXITED(status)) {
|
|
+ ods_log_error("[%s] notify nameserver failed: notify ",
|
|
+ "command did not terminate normally", tools_str);
|
|
+ } else {
|
|
+ ods_log_verbose("[%s] notify nameserver ok", tools_str);
|
|
+ }
|
|
break;
|
|
}
|
|
}
|