]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
pullup:
authorAndreas Gustafsson <source@isc.org>
Mon, 17 Jul 2000 17:30:11 +0000 (17:30 +0000)
committerAndreas Gustafsson <source@isc.org>
Mon, 17 Jul 2000 17:30:11 +0000 (17:30 +0000)
 331.   [bug]           Only log "recursion denied" if RD is set. (RT #178)

CHANGES
bin/named/client.c

diff --git a/CHANGES b/CHANGES
index bad929ef6d0b6b82d5e8ec62cf0bf1a78fae9873..3f236e4a36aa4cb056c832bda853eec00adc9e00 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -2,6 +2,8 @@
                        domains that were not parents of the query name,
                        causing assertion failures.
 
+ 331.  [bug]           Only log "recursion denied" if RD is set. (RT #178)
+
        --- 9.0.0rc1 released ---
 
  329.  [func]          omapi_auth_register() now takes a size_t argument for
index ad5fa8140ebdbca7ffc3406c49cd33a20462c07e..9dba9ef79a01d94ca98ad3bc853dd5e76df2442d 100644 (file)
@@ -15,7 +15,7 @@
  * SOFTWARE.
  */
 
-/* $Id: client.c,v 1.98 2000/06/22 23:48:07 marka Exp $ */
+/* $Id: client.c,v 1.98.2.1 2000/07/17 17:30:11 gson Exp $ */
 
 #include <config.h>
 
@@ -816,6 +816,7 @@ client_request(isc_task_t *task, isc_event_t *event) {
        dns_view_t *view;
        dns_rdataset_t *opt;
        isc_boolean_t ra;       /* Recursion available. */
+       isc_boolean_t rd;       /* Recursion desired. */
 
        REQUIRE(event != NULL);
        client = event->ev_arg;
@@ -1041,12 +1042,13 @@ client_request(isc_task_t *task, isc_event_t *event) {
         * responses to ordinary queries.
         */
        ra = ISC_FALSE;
+       rd = ISC_TF((client->message->flags & DNS_MESSAGEFLAG_RD) != 0);
        if (client->view->resolver != NULL &&
            client->view->recursion == ISC_TRUE &&
            /* XXX this will log too much too early */
            ns_client_checkacl(client, "recursion",
                               client->view->recursionacl,
-                              ISC_TRUE, ISC_TRUE) == ISC_R_SUCCESS)
+                              ISC_TRUE, rd) == ISC_R_SUCCESS)
                ra = ISC_TRUE;
 
        if (ra == ISC_TRUE)