Browse Source

Merge branch 'master' of ssh://jreed@bind10.isc.org//var/bind10/git/bind10

Jeremy C. Reed 14 years ago
parent
commit
8a4a87feea

+ 8 - 5
ChangeLog

@@ -44,7 +44,8 @@ bind10-devel-20110120 released on January 20, 2011
 	receive buffer became full, and many other components that rely
 	receive buffer became full, and many other components that rely
 	on CC channels would stall (as noted in #420 and #513).  This is
 	on CC channels would stall (as noted in #420 and #513).  This is
 	an urgent care fix due to the severity of the problem; we'll need
 	an urgent care fix due to the severity of the problem; we'll need
-	to revisit it for cleaner fix later. (Trac #516, git 62c72fc)
+	to revisit it for cleaner fix later.
+	(Trac #516, git 62c72fcdf4617e4841e901408f1e7961255b8194)
 
 
   153.	[bug]		jelte
   153.	[bug]		jelte
 	b10-cfgmgr: Fixed a bug where configuration updates sometimes
 	b10-cfgmgr: Fixed a bug where configuration updates sometimes
@@ -58,7 +59,7 @@ bind10-devel-20110120 released on January 20, 2011
 	the value to 0.  Disabling statistics updates will also work as
 	the value to 0.  Disabling statistics updates will also work as
 	a temporary workaround of a known issue that b10-auth can block in
 	a temporary workaround of a known issue that b10-auth can block in
 	sending statistics and stop responding to queries as a result.
 	sending statistics and stop responding to queries as a result.
-	(Trac #513, git 285c5ee)
+	(Trac #513, git 285c5ee3d5582ed6df02d1aa00387f92a74e3695)
 
 
   151.  [bug]		smann
   151.  [bug]		smann
 	lib/log/dummylog.h: 
 	lib/log/dummylog.h: 
@@ -90,7 +91,7 @@ bind10-devel-20110120 released on January 20, 2011
   147.	[bug]		jinmei
   147.	[bug]		jinmei
 	python/isc/config: Fixed a bug that importing custom configuration
 	python/isc/config: Fixed a bug that importing custom configuration
 	(in b10-config.db) of a remote module didn't work.
 	(in b10-config.db) of a remote module didn't work.
-	(Trac #478, git ea4a481)
+	(Trac #478, git ea4a481003d80caf2bff8d0187790efd526d72ca)
 
 
   146.	[func]		jelte
   146.	[func]		jelte
 	Command arguments were not validated internally against their
 	Command arguments were not validated internally against their
@@ -105,7 +106,8 @@ bind10-devel-20110120 released on January 20, 2011
 	only feasible for class IN in memory data source.  To reload a
 	only feasible for class IN in memory data source.  To reload a
 	zone "example.com" via bindctl, execute the command as follows:
 	zone "example.com" via bindctl, execute the command as follows:
 	> Auth loadzone origin = example.com
 	> Auth loadzone origin = example.com
-	(Trac #467)
+	(Trac #467 git 4f7e1f46da1046de527ab129a88f6aad3dba7562
+	from 1d7d3918661ba1c6a8b1e40d8fcbc5640a84df12)
 
 
   144.	[build]		jinmei
   144.	[build]		jinmei
 	Introduced a workaround for clang++ build on FreeBSD (and probably
 	Introduced a workaround for clang++ build on FreeBSD (and probably
@@ -115,7 +117,8 @@ bind10-devel-20110120 released on January 20, 2011
 	doesn't matter; the important part is the -L flag).  This
 	doesn't matter; the important part is the -L flag).  This
 	workaround is not automatically enabled as it's difficult to
 	workaround is not automatically enabled as it's difficult to
 	detect the need for it dynamically, and must be enabled via the
 	detect the need for it dynamically, and must be enabled via the
-	variable by hand. (Trac #474, git cfde436)
+	variable by hand.
+	(Trac #474, git cfde436fbd7ddf3f49cbbd153999656e8ca2a298)
 
 
   143.	[build]		jinmei
   143.	[build]		jinmei
 	Fixed build problems with clang++ in unit tests due to recent
 	Fixed build problems with clang++ in unit tests due to recent

+ 6 - 2
src/lib/asiolink/asiolink.cc

@@ -282,9 +282,13 @@ typedef std::vector<std::pair<std::string, uint16_t> > AddressVector;
 
 
 }
 }
 
 
+// Here we do not use the typedef above, as the SunStudio compiler
+// mishandles this in its name mangling, and wouldn't compile.
+// We can probably use a typedef, but need to move it to a central
+// location and use it consistently.
 RecursiveQuery::RecursiveQuery(DNSService& dns_service,
 RecursiveQuery::RecursiveQuery(DNSService& dns_service,
-    const AddressVector& upstream,
-    const AddressVector& upstream_root,
+    const std::vector<std::pair<std::string, uint16_t> >& upstream,
+    const std::vector<std::pair<std::string, uint16_t> >& upstream_root,
     int query_timeout, int client_timeout, int lookup_timeout,
     int query_timeout, int client_timeout, int lookup_timeout,
     unsigned retries) :
     unsigned retries) :
     dns_service_(dns_service), upstream_(new AddressVector(upstream)),
     dns_service_(dns_service), upstream_(new AddressVector(upstream)),

+ 2 - 2
src/lib/asiolink/tests/asiolink_unittest.cc

@@ -154,14 +154,14 @@ TEST(IOServiceTest, unavailableAddress) {
     IOService io_service;
     IOService io_service;
     // These addresses should generally be unavailable as a valid local
     // These addresses should generally be unavailable as a valid local
     // address, although there's no guarantee in theory.
     // address, although there's no guarantee in theory.
-    EXPECT_THROW(DNSService(io_service, *TEST_SERVER_PORT, *"255.255.0.0", NULL, NULL, NULL), IOError);
+    EXPECT_THROW(DNSService(io_service, *TEST_SERVER_PORT, *"192.0.2.0", NULL, NULL, NULL), IOError);
 
 
     // Some OSes would simply reject binding attempt for an AF_INET6 socket
     // Some OSes would simply reject binding attempt for an AF_INET6 socket
     // to an IPv4-mapped IPv6 address.  Even if those that allow it, since
     // to an IPv4-mapped IPv6 address.  Even if those that allow it, since
     // the corresponding IPv4 address is the same as the one used in the
     // the corresponding IPv4 address is the same as the one used in the
     // AF_INET socket case above, it should at least show the same result
     // AF_INET socket case above, it should at least show the same result
     // as the previous one.
     // as the previous one.
-    EXPECT_THROW(DNSService(io_service, *TEST_SERVER_PORT, *"::ffff:255.255.0.0", NULL, NULL, NULL), IOError);
+    EXPECT_THROW(DNSService(io_service, *TEST_SERVER_PORT, *"::ffff:192.0.2.0", NULL, NULL, NULL), IOError);
 }
 }
 
 
 TEST(IOServiceTest, duplicateBind_v6) {
 TEST(IOServiceTest, duplicateBind_v6) {

+ 1 - 1
src/lib/datasrc/memory_datasrc.cc

@@ -253,7 +253,7 @@ struct MemoryZone::MemoryZoneImpl {
         }
         }
 
 
         // handle type any query
         // handle type any query
-        if (target && !node->getData()->empty()) {
+        if (target != NULL && !node->getData()->empty()) {
             // Empty domain will be handled as NXRRSET by normal processing
             // Empty domain will be handled as NXRRSET by normal processing
             for (found = node->getData()->begin();
             for (found = node->getData()->begin();
                  found != node->getData()->end(); found++)
                  found != node->getData()->end(); found++)