diff --git a/src/rfc1035.c b/src/rfc1035.c
index 6038337..c2208e4 100644
--- a/src/rfc1035.c
+++ b/src/rfc1035.c
@@ -1335,7 +1335,6 @@
 		    {
 		      unsigned long ttl = daemon->local_ttl;
 		      int ok = 1;
-		      log_query(F_CONFIG | F_RRNAME, name, NULL, "<TXT>");
 #ifndef NO_ID
 		      /* Dynamically generate stat record */
 		      if (t->stat != 0)
@@ -1345,11 +1344,14 @@
 			    ok = 0;
 			}
 #endif
-		      if (ok && add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
-						    ttl, NULL,
-						    T_TXT, t->class, "t", t->len, t->txt))
-			anscount++;
-
+		      if (ok)
+			{
+			  log_query(F_CONFIG | F_RRNAME, name, NULL, "<TXT>");
+			  if (add_resource_record(header, limit, &trunc, nameoffset, &ansp, 
+						  ttl, NULL,
+						  T_TXT, t->class, "t", t->len, t->txt))
+			    anscount++;
+			}
 		    }
 		}
 	    }
@@ -1357,12 +1359,19 @@
 
       if (qclass == C_CHAOS)
 	{
-	  /* don't forward *.bind and *.server chaos queries */
+	  /* don't forward *.bind and *.server chaos queries - always reply with NOTIMP */
 	  if (hostname_issubdomain("bind", name) || hostname_issubdomain("server", name))
 	    {
 	      if (!ans)
-		notimp = 1, auth = 0;
-	      ans = 1;
+		{
+		  notimp = 1, auth = 0;
+		  if (!dryrun)
+		    {
+		       addr.addr.rcode.rcode = NOTIMP;
+		       log_query(F_CONFIG | F_RCODE, name, &addr, NULL);
+		    }
+		  ans = 1;
+		}
 	    }
 	}
 
