Browse Source

[trac1104] adjusted resolver interface to use TSIG for ACL. right now
it's always NULL because it cannot be configured with TSIG keys.
it should be done in a separate ticket.

JINMEI Tatuya 13 years ago
parent
commit
42017c858f

+ 2 - 1
src/bin/resolver/resolver.cc

@@ -520,7 +520,8 @@ ResolverImpl::processNormalQuery(const IOMessage& io_message,
     const Client client(io_message);
     const Client client(io_message);
     const BasicAction query_action(
     const BasicAction query_action(
         getQueryACL().execute(acl::dns::RequestContext(
         getQueryACL().execute(acl::dns::RequestContext(
-                                  client.getRequestSourceIPAddress())));
+                                  client.getRequestSourceIPAddress(),
+                                  query_message->getTSIGRecord())));
     if (query_action == isc::acl::REJECT) {
     if (query_action == isc::acl::REJECT) {
         LOG_INFO(resolver_logger, RESOLVER_QUERY_REJECTED)
         LOG_INFO(resolver_logger, RESOLVER_QUERY_REJECTED)
             .arg(question->getName()).arg(qtype).arg(qclass).arg(client);
             .arg(question->getName()).arg(qtype).arg(qclass).arg(client);

+ 2 - 1
src/bin/resolver/tests/resolver_config_unittest.cc

@@ -72,7 +72,8 @@ protected:
                                           IOSocket::getDummyUDPSocket(),
                                           IOSocket::getDummyUDPSocket(),
                                           *endpoint));
                                           *endpoint));
         client.reset(new Client(*query_message));
         client.reset(new Client(*query_message));
-        request.reset(new RequestContext(client->getRequestSourceIPAddress()));
+        request.reset(new RequestContext(client->getRequestSourceIPAddress(),
+                                         NULL));
         return (*request);
         return (*request);
     }
     }
     void invalidTest(const string &JSON, const string& name);
     void invalidTest(const string &JSON, const string& name);