BIND 10 trac805, updated. dc1f905a3c787577a3627a1ead607a13460dbb2f [805] Initialization

BIND 10 source code commits bind10-changes at lists.isc.org
Thu Dec 22 10:35:58 UTC 2011


The branch, trac805 has been updated
       via  dc1f905a3c787577a3627a1ead607a13460dbb2f (commit)
       via  c497ad2631b59d6645a7917d3a96e3d8bed577ee (commit)
       via  f7df24d2d83828d3e7a0652a83c1736a5aa79ced (commit)
      from  ddb94ad8340db3f41ede1a4509db23df5288cc05 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit dc1f905a3c787577a3627a1ead607a13460dbb2f
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date:   Thu Dec 22 11:31:17 2011 +0100

    [805] Initialization

commit c497ad2631b59d6645a7917d3a96e3d8bed577ee
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date:   Thu Dec 22 11:19:46 2011 +0100

    [805] Release on broken rollback

commit f7df24d2d83828d3e7a0652a83c1736a5aa79ced
Author: Michal 'vorner' Vaner <michal.vaner at nic.cz>
Date:   Thu Dec 22 11:16:35 2011 +0100

    [805] Provide correct address family

-----------------------------------------------------------------------

Summary of changes:
 src/bin/auth/main.cc                    |    3 +++
 src/bin/resolver/main.cc                |    3 +++
 src/lib/server_common/portconfig.cc     |    9 +++++++--
 src/lib/server_common/socket_request.cc |    6 ++++++
 4 files changed, 19 insertions(+), 2 deletions(-)

-----------------------------------------------------------------------
diff --git a/src/bin/auth/main.cc b/src/bin/auth/main.cc
index c8f6762..143364b 100644
--- a/src/bin/auth/main.cc
+++ b/src/bin/auth/main.cc
@@ -49,6 +49,7 @@
 #include <asiolink/asiolink.h>
 #include <log/logger_support.h>
 #include <server_common/keyring.h>
+#include <server_common/socket_request.h>
 
 using namespace std;
 using namespace isc::asiodns;
@@ -168,6 +169,8 @@ main(int argc, char* argv[]) {
                                              my_config_handler,
                                              my_command_handler, false);
         LOG_DEBUG(auth_logger, DBG_AUTH_START, AUTH_CONFIG_CHANNEL_ESTABLISHED);
+        // Initialize the Socket Requestor
+        isc::server_common::SocketRequestor::init(*config_session);
 
         xfrin_session = new Session(io_service.get_io_service());
         LOG_DEBUG(auth_logger, DBG_AUTH_START, AUTH_XFRIN_CHANNEL_CREATED);
diff --git a/src/bin/resolver/main.cc b/src/bin/resolver/main.cc
index 79146da..cfa9a2d 100644
--- a/src/bin/resolver/main.cc
+++ b/src/bin/resolver/main.cc
@@ -41,6 +41,8 @@
 #include <cc/data.h>
 #include <config/ccsession.h>
 
+#include <server_common/socket_request.h>
+
 #include <xfr/xfrout_client.h>
 
 #include <auth/change_user.h>
@@ -209,6 +211,7 @@ main(int argc, char* argv[]) {
         config_session = new ModuleCCSession(specfile, *cc_session,
                                              my_config_handler,
                                              my_command_handler);
+        isc::server_common::SocketRequestor::init(*config_session);
         LOG_DEBUG(resolver_logger, RESOLVER_DBG_INIT, RESOLVER_CONFIG_CHANNEL);
 
         // FIXME: This does not belong here, but inside Boss
diff --git a/src/lib/server_common/portconfig.cc b/src/lib/server_common/portconfig.cc
index 3f2a316..929ef71 100644
--- a/src/lib/server_common/portconfig.cc
+++ b/src/lib/server_common/portconfig.cc
@@ -92,6 +92,7 @@ setAddresses(DNSService& service, const AddressList& addresses) {
     }
     current_sockets.clear();
     BOOST_FOREACH(const AddressPair &address, addresses) {
+        bool is_v6(IOAddress(address.first).getFamily() == AF_INET6);
         // TODO: Support sharing somehow in future.
         const SocketRequestor::SocketID
             tcp(socketRequestor().requestSocket(SocketRequestor::TCP,
@@ -100,7 +101,7 @@ setAddresses(DNSService& service, const AddressList& addresses) {
                                                 "dummy_app"));
         current_sockets.push_back(tcp.second);
         if (!test_mode) {
-            service.addServerTCP(tcp.first, true); // FIXME: Correct the flag
+            service.addServerTCP(tcp.first, is_v6);
         }
         const SocketRequestor::SocketID
             udp(socketRequestor().requestSocket(SocketRequestor::UDP,
@@ -109,7 +110,7 @@ setAddresses(DNSService& service, const AddressList& addresses) {
                                                 "dummy_app"));
         current_sockets.push_back(udp.second);
         if (!test_mode) {
-            service.addServerUDP(udp.first, true); // FIXME: Correct the flag
+            service.addServerUDP(udp.first, is_v6);
         }
     }
 }
@@ -150,6 +151,10 @@ installListenAddresses(const AddressList& newAddresses,
         }
         catch (const exception& e2) {
             LOG_FATAL(logger, SRVCOMM_ADDRESS_UNRECOVERABLE).arg(e2.what());
+            // Releasing them should really work
+            AddressList empty;
+            setAddresses(service, empty);
+            addressStore.clear();
         }
         //Anyway the new configure has problem, we need to notify configure
         //manager the new configure doesn't work
diff --git a/src/lib/server_common/socket_request.cc b/src/lib/server_common/socket_request.cc
index 328816f..11c2cde 100644
--- a/src/lib/server_common/socket_request.cc
+++ b/src/lib/server_common/socket_request.cc
@@ -35,5 +35,11 @@ SocketRequestor::initTest(SocketRequestor* new_requestor) {
     requestor = new_requestor;
 }
 
+void
+SocketRequestor::init(config::ModuleCCSession&) {
+    isc_throw(NotImplemented,
+              "The socket requestor will be implemented in #1522");
+}
+
 }
 }




More information about the bind10-changes mailing list