  	{
  	  if (errno == ENOBUFS)
 diff --git a/src/network.c b/src/network.c
-index 3ef71b9..e305c03 100644
+index 296c7bd..c03961a 100644
 --- a/src/network.c
 +++ b/src/network.c
 @@ -697,6 +697,7 @@ int enumerate_interfaces(int reset)

 }
 
+void fuzz_blockdata_cleanup() {
+  for (int i = 0; i < 200; i++) {
+    if (total_allocated[i] != NULL) {
+      free(total_allocated[i]);
+    }
+  }
+}
+
 void blockdata_report(void)
 {
   my_syslog(LOG_INFO, _("pool memory in use %u, max %u, allocated %u"), 
diff --git a/src/dhcp.c b/src/dhcp.c
index 97324f2..1751df7 100644
--- a/src/dhcp.c
+++ b/src/dhcp.c
@@ -183,18 +183,26 @@ void dhcp_packet(time_t now, int pxe_fd)

 
+  fuzz_total_alloc_ptr = 0;
+  for (int m = 0; m < 200; m++)
+	  total_allocated[m] = NULL;
+
   /* Note that daemon->cachesize is enforced to have non-zero size if OPT_DNSSEC_VALID is set */  
   if (option_bool(OPT_DNSSEC_VALID))
