-diff -Nur ORIG.bind-9.14.1/bin/named/fuzz.c bind-9.14.1/bin/named/fuzz.c
---- ORIG.bind-9.14.1/bin/named/fuzz.c	2019-04-06 22:09:59.000000000 +0200
-+++ bind-9.14.1/bin/named/fuzz.c	2019-05-09 16:09:56.131889311 +0200
-@@ -738,7 +738,7 @@
-  */
- void
- named_fuzz_notify(void) {
--#ifdef ENABLE_AFL
-+#if 0
- 	if (getenv("AFL_CMIN")) {
- 		named_server_flushonshutdown(named_g_server, false);
- 		isc_app_shutdown();
-@@ -758,7 +758,7 @@
- 
- void
- named_fuzz_setup(void) {
--#ifdef ENABLE_AFL
-+#if 0
- 	if (getenv("__AFL_PERSISTENT") || getenv("AFL_CMIN")) {
- 		pthread_t thread;
- 		void *(fn) = NULL;
 diff -Nur ORIG.bind-9.14.1/bin/named/main.c bind-9.14.1/bin/named/main.c
 --- ORIG.bind-9.14.1/bin/named/main.c	2019-04-06 22:09:59.000000000 +0200
-+++ bind-9.14.1/bin/named/main.c	2019-05-09 16:09:56.131889311 +0200
-@@ -1347,13 +1347,262 @@
++++ bind-9.14.1/bin/named/main.c	2019-05-09 16:26:27.615239219 +0200
+@@ -1347,11 +1347,285 @@
  }
  #endif /* HAVE_LIBSCF */
  

 	return (next());
 }
 
@@ -124,6 +127,12 @@
 	RUNTIME_CHECK(isc_once_do(&isc_random_once,
 				  isc_random_initialize) == ISC_R_SUCCESS);
 
+	for (size_t z = 0; z < buflen; z++) {
+			char * b = (char*)buf;
+			b[z] = z + 1;
+	}
+	return;
+
 	for (i = 0; i + sizeof(r) <= buflen; i += sizeof(r)) {
 		r = next();
 		memmove((uint8_t *)buf + i, &r, sizeof(r));
@@ -145,6 +154,8 @@
 		return (0);
 	}
 
+	return 1;
+
 #if (ULONG_MAX > 0xffffffffUL)
 	min = 0x100000000UL % upper_bound;
 #else  /* if (ULONG_MAX > 0xffffffffUL) */

+            close(nfd);
+            continue;
+        }
+        if (rlen < 1) {
+            close(nfd);
+            continue;
+        }
+
+        /* It's a response, so set QR bit to 1 */
+        uint8_t qr = rbuf[0] | 0x80;
+
+        uint16_t t_l = htons(rlen + 2);
+        const struct iovec iov[] = {
