Blob Blame History Raw
diff -up bind-9.9.4/lib/dns/zone.c.CVE-2015-1349 bind-9.9.4/lib/dns/zone.c
--- bind-9.9.4/lib/dns/zone.c.CVE-2015-1349	2015-03-02 11:18:36.138872044 +0100
+++ bind-9.9.4/lib/dns/zone.c	2015-03-02 11:20:15.941032102 +0100
@@ -8456,6 +8456,12 @@ keyfetch_done(isc_task_t *task, isc_even
 					     namebuf, tag);
 				trustkey = ISC_TRUE;
 			}
+		} else {
+			/*
+			 * No previously known key, and the key is not
+			 * secure, so skip it.
+			 */
+			continue;
 		}
 
 		/* Delete old version */
@@ -8504,7 +8510,7 @@ keyfetch_done(isc_task_t *task, isc_even
 			trust_key(zone, keyname, &dnskey, mctx);
 		}
 
-		if (!deletekey)
+		if (secure && !deletekey)
 			set_refreshkeytimer(zone, &keydata, now);
 	}