Tomas Hozza 0d06cc
diff -up bind-9.9.4-P2/lib/dns/zone.c.CVE-2015-1349 bind-9.9.4-P2/lib/dns/zone.c
Tomas Hozza 0d06cc
--- bind-9.9.4-P2/lib/dns/zone.c.CVE-2015-1349	2013-12-20 01:28:28.000000000 +0100
Tomas Hozza 0d06cc
+++ bind-9.9.4-P2/lib/dns/zone.c	2015-02-23 10:28:03.495089085 +0100
Tomas Hozza 0d06cc
@@ -8456,6 +8456,12 @@ keyfetch_done(isc_task_t *task, isc_even
Tomas Hozza 0d06cc
 					     namebuf, tag);
Tomas Hozza 0d06cc
 				trustkey = ISC_TRUE;
Tomas Hozza 0d06cc
 			}
Tomas Hozza 0d06cc
+		} else {
Tomas Hozza 0d06cc
+			/*
Tomas Hozza 0d06cc
+			 * No previously known key, and the key is not
Tomas Hozza 0d06cc
+			 * secure, so skip it.
Tomas Hozza 0d06cc
+			 */
Tomas Hozza 0d06cc
+			continue;
Tomas Hozza 0d06cc
 		}
Tomas Hozza 0d06cc
 
Tomas Hozza 0d06cc
 		/* Delete old version */
Tomas Hozza 0d06cc
@@ -8504,7 +8510,7 @@ keyfetch_done(isc_task_t *task, isc_even
Tomas Hozza 0d06cc
 			trust_key(zone, keyname, &dnskey, mctx);
Tomas Hozza 0d06cc
 		}
Tomas Hozza 0d06cc
 
Tomas Hozza 0d06cc
-		if (!deletekey)
Tomas Hozza 0d06cc
+		if (secure && !deletekey)
Tomas Hozza 0d06cc
 			set_refreshkeytimer(zone, &keydata, now);
Tomas Hozza 0d06cc
 	}
Tomas Hozza 0d06cc