Do a better job of 942a35f5177746d2080e7aa118dd1493a500e2d5 v2.92test3
authorSimon Kelley <simon@thekelleys.org.uk>
Fri, 18 Apr 2025 13:01:14 +0000 (14:01 +0100)
committerSimon Kelley <simon@thekelleys.org.uk>
Fri, 18 Apr 2025 13:01:14 +0000 (14:01 +0100)
src/cache.c

index 682ee92..94f19a5 100644 (file)
@@ -844,12 +844,15 @@ void cache_end_insert(void)
 
 #ifdef HAVE_DNSSEC
       /* Sneak out possibly updated crypto HWM values. */
-      m = daemon->metrics[METRIC_CRYPTO_HWM];
-      read_write(daemon->pipe_to_parent, (unsigned char *)&m, sizeof(m), RW_WRITE);
-      m = daemon->metrics[METRIC_SIG_FAIL_HWM];
-      read_write(daemon->pipe_to_parent, (unsigned char *)&m, sizeof(m), RW_WRITE);
-      m = daemon->metrics[METRIC_WORK_HWM];
-      read_write(daemon->pipe_to_parent, (unsigned char *)&m, sizeof(m), RW_WRITE);
+      read_write(daemon->pipe_to_parent,
+                (unsigned char *)&daemon->metrics[METRIC_CRYPTO_HWM],
+                sizeof(daemon->metrics[METRIC_CRYPTO_HWM]), RW_WRITE);
+      read_write(daemon->pipe_to_parent,
+                (unsigned char *)&daemon->metrics[METRIC_SIG_FAIL_HWM],
+                sizeof(daemon->metrics[METRIC_SIG_FAIL_HWM]), RW_WRITE);
+      read_write(daemon->pipe_to_parent,
+                (unsigned char *)&daemon->metrics[METRIC_WORK_HWM],
+                sizeof(daemon->metrics[METRIC_WORK_HWM]), RW_WRITE);
 #endif
     }
       
@@ -879,18 +882,20 @@ int cache_recv_insert(time_t now, int fd)
        {
 #ifdef HAVE_DNSSEC
          /* Sneak in possibly updated crypto HWM. */
-         if (!read_write(fd, (unsigned char *)&m, sizeof(m), RW_READ))
+         unsigned int val;
+         
+         if (!read_write(fd, (unsigned char *)&val, sizeof(val), RW_READ))
            return 0;
-         if ((unsigned int)m > daemon->metrics[METRIC_CRYPTO_HWM])
-           daemon->metrics[METRIC_CRYPTO_HWM] = m;
-         if (!read_write(fd, (unsigned char *)&m, sizeof(m), RW_READ))
+         if (val > daemon->metrics[METRIC_CRYPTO_HWM])
+           daemon->metrics[METRIC_CRYPTO_HWM] = val;
+         if (!read_write(fd, (unsigned char *)&val, sizeof(val), RW_READ))
            return 0;
-         if ((unsigned int)m > daemon->metrics[METRIC_SIG_FAIL_HWM])
-           daemon->metrics[METRIC_SIG_FAIL_HWM] = m;
-         if (!read_write(fd, (unsigned char *)&m, sizeof(m), RW_READ))
+         if (val > daemon->metrics[METRIC_SIG_FAIL_HWM])
+           daemon->metrics[METRIC_SIG_FAIL_HWM] = val;
+         if (!read_write(fd, (unsigned char *)&val, sizeof(val), RW_READ))
            return 0;
-         if ((unsigned int)m > daemon->metrics[METRIC_WORK_HWM])
-           daemon->metrics[METRIC_WORK_HWM] = m;
+         if (val > daemon->metrics[METRIC_WORK_HWM])
+           daemon->metrics[METRIC_WORK_HWM] = val;
 #endif
          cache_end_insert();
          return 1;