[svn] commit: r2465 - in /branches/trac221b/src/bin/auth: asio_link.cc asio_link.h tests/asio_link_unittest.cc

BIND 10 source code commits bind10-changes at lists.isc.org
Sat Jul 10 00:05:54 UTC 2010


Author: jinmei
Date: Sat Jul 10 00:05:54 2010
New Revision: 2465

Log:
added tests on port string validity

Modified:
    branches/trac221b/src/bin/auth/asio_link.cc
    branches/trac221b/src/bin/auth/asio_link.h
    branches/trac221b/src/bin/auth/tests/asio_link_unittest.cc

Modified: branches/trac221b/src/bin/auth/asio_link.cc
==============================================================================
--- branches/trac221b/src/bin/auth/asio_link.cc (original)
+++ branches/trac221b/src/bin/auth/asio_link.cc Sat Jul 10 00:05:54 2010
@@ -510,9 +510,8 @@
 
     try {
         portnum = boost::lexical_cast<uint16_t>(port);
-    } catch (const std::exception& ex) {
-        isc_throw(FatalError, "[b10-auth] Invalid port number '"
-                              << port << "'");
+    } catch (const boost::bad_lexical_cast& ex) {
+        isc_throw(IOError, "[b10-auth] Invalid port number '" << port << "'");
     }
 
     if (address != NULL) {

Modified: branches/trac221b/src/bin/auth/asio_link.h
==============================================================================
--- branches/trac221b/src/bin/auth/asio_link.h (original)
+++ branches/trac221b/src/bin/auth/asio_link.h Sat Jul 10 00:05:54 2010
@@ -390,7 +390,7 @@
     /// \brief The constructor.  Currently very specific to the authoritative
     /// server implementation.
     IOService(AuthSrv* auth_server, const char* const address,
-              const char* port, bool use_ipv4, bool use_ipv6);
+              const char* const port, bool use_ipv4, bool use_ipv6);
     /// \brief The destructor.
     ~IOService();
     //@}

Modified: branches/trac221b/src/bin/auth/tests/asio_link_unittest.cc
==============================================================================
--- branches/trac221b/src/bin/auth/tests/asio_link_unittest.cc (original)
+++ branches/trac221b/src/bin/auth/tests/asio_link_unittest.cc Sat Jul 10 00:05:54 2010
@@ -89,6 +89,13 @@
     EXPECT_EQ(-1, IOSocket::getDummyTCPSocket().getNative());
 }
 
+TEST(IOServiceTest, badPort) {
+    EXPECT_THROW(IOService(NULL, NULL, "65536", true, false), IOError);
+    EXPECT_THROW(IOService(NULL, NULL, "5300.0", true, false), IOError);
+    EXPECT_THROW(IOService(NULL, NULL, "-1", true, false), IOError);
+    EXPECT_THROW(IOService(NULL, NULL, "domain", true, false), IOError);
+}
+
 struct addrinfo*
 resolveAddress(const int family, const int sock_type, const int protocol) {
     const char* const addr = (family == AF_INET6) ?




More information about the bind10-changes mailing list