BIND 10 master, updated. 3aee00b231be08a7edecfedf833ab0d9f2629922 [master] Merge branch 'trac2587'
BIND 10 source code commits
bind10-changes at lists.isc.org
Fri Jan 18 10:21:55 UTC 2013
The branch, master has been updated
via 3aee00b231be08a7edecfedf833ab0d9f2629922 (commit)
via d3c90ab38ecda07729741cb67505c4e9a659c6be (commit)
via 39512e1b3142a1006cb793817691f4ce9fd7480c (commit)
via b88f6fb05d83b5ee7b7594630e02093398f995c7 (commit)
via 914eb9b64bfcf703c2538cbf20b9c82bfbdfb525 (commit)
via 329ab8b7d40b2bd34997da2635cf68e51795cbf3 (commit)
via 37322e5124dce0d69305553977cbcf30e659688a (commit)
via 4b9b3bdcb7d97d916248215846002b27d91c43c2 (commit)
from bdc99366fe025e5175e4a6e2c189e3d5ae1125f7 (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 3aee00b231be08a7edecfedf833ab0d9f2629922
Merge: bdc9936 d3c90ab
Author: Jelte Jansen <jelte at isc.org>
Date: Fri Jan 18 10:57:05 2013 +0100
[master] Merge branch 'trac2587'
-----------------------------------------------------------------------
Summary of changes:
src/bin/auth/tests/auth_srv_unittest.cc | 27 +++++++++++++++-------
src/lib/testutils/srv_test.cc | 37 +++++++++++++------------------
src/lib/testutils/srv_test.h | 10 ++++-----
3 files changed, 39 insertions(+), 35 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/bin/auth/tests/auth_srv_unittest.cc b/src/bin/auth/tests/auth_srv_unittest.cc
index 7f89fda..826d1b8 100644
--- a/src/bin/auth/tests/auth_srv_unittest.cc
+++ b/src/bin/auth/tests/auth_srv_unittest.cc
@@ -1286,12 +1286,12 @@ TEST_F(AuthSrvTest, queryCounterUnexpected) {
createRequestPacket(request_message, IPPROTO_UDP);
// Modify the message.
- delete io_message;
- endpoint = IOEndpoint::create(IPPROTO_UDP,
- IOAddress(DEFAULT_REMOTE_ADDRESS), 53210);
- io_message = new IOMessage(request_renderer.getData(),
- request_renderer.getLength(),
- getDummyUnknownSocket(), *endpoint);
+ endpoint.reset(IOEndpoint::create(IPPROTO_UDP,
+ IOAddress(DEFAULT_REMOTE_ADDRESS),
+ 53210));
+ io_message.reset(new IOMessage(request_renderer.getData(),
+ request_renderer.getLength(),
+ getDummyUnknownSocket(), *endpoint));
EXPECT_FALSE(dnsserv.hasAnswer());
}
@@ -1716,9 +1716,20 @@ void
checkAddrPort(const struct sockaddr& actual_sa,
const string& expected_addr, uint16_t expected_port)
{
+ // ASIO does not set as_len, which is not a problem on most
+ // systems, but it will make getnameinfo() fail on NetBSD 4
+ // So we make a copy and if the field is available, we set it
+ const socklen_t sa_len = getSALength(actual_sa);
+ struct sockaddr_storage ss;
+ memcpy(&ss, &actual_sa, sa_len);
+
+ struct sockaddr* sa = convertSockAddr(&ss);
+#ifdef HAVE_SA_LEN
+ sa->sa_len = sa_len;
+#endif
char hbuf[NI_MAXHOST], sbuf[NI_MAXSERV];
- const int error = getnameinfo(&actual_sa, getSALength(actual_sa), hbuf,
- sizeof(hbuf), sbuf, sizeof(sbuf),
+ const int error = getnameinfo(sa, sa_len, hbuf, sizeof(hbuf),
+ sbuf, sizeof(sbuf),
NI_NUMERICHOST | NI_NUMERICSERV);
if (error != 0) {
isc_throw(isc::Unexpected, "getnameinfo failed: " <<
diff --git a/src/lib/testutils/srv_test.cc b/src/lib/testutils/srv_test.cc
index d686da6..7b0b1bb 100644
--- a/src/lib/testutils/srv_test.cc
+++ b/src/lib/testutils/srv_test.cc
@@ -27,6 +27,8 @@
#include <testutils/dnsmessage_test.h>
#include <testutils/srv_test.h>
+#include <boost/scoped_ptr.hpp>
+
using namespace isc::dns;
using namespace isc::util;
using namespace isc::asiolink;
@@ -48,27 +50,20 @@ SrvTestBase::SrvTestBase() : request_message(Message::RENDER),
response_obuffer(new OutputBuffer(0))
{}
-SrvTestBase::~SrvTestBase() {
- delete io_message;
- delete endpoint;
-}
-
void
SrvTestBase::createDataFromFile(const char* const datafile,
const int protocol)
{
- delete io_message;
data.clear();
- delete endpoint;
-
- endpoint = IOEndpoint::create(protocol,
- IOAddress(DEFAULT_REMOTE_ADDRESS),
- DEFAULT_REMOTE_PORT);
+ endpoint.reset(IOEndpoint::create(protocol,
+ IOAddress(DEFAULT_REMOTE_ADDRESS),
+ DEFAULT_REMOTE_PORT));
UnitTestUtil::readWireData(datafile, data);
io_sock = (protocol == IPPROTO_UDP) ? &IOSocket::getDummyUDPSocket() :
&IOSocket::getDummyTCPSocket();
- io_message = new IOMessage(&data[0], data.size(), *io_sock, *endpoint);
+ io_message.reset(new IOMessage(&data[0], data.size(), *io_sock,
+ *endpoint));
}
void
@@ -83,16 +78,14 @@ SrvTestBase::createRequestPacket(Message& message,
message.toWire(request_renderer, *context);
}
- delete io_message;
-
- endpoint = IOEndpoint::create(protocol, IOAddress(remote_address),
- remote_port);
+ endpoint.reset(IOEndpoint::create(protocol, IOAddress(remote_address),
+ remote_port));
io_sock = (protocol == IPPROTO_UDP) ? &IOSocket::getDummyUDPSocket() :
&IOSocket::getDummyTCPSocket();
- io_message = new IOMessage(request_renderer.getData(),
- request_renderer.getLength(),
- *io_sock, *endpoint);
+ io_message.reset(new IOMessage(request_renderer.getData(),
+ request_renderer.getLength(),
+ *io_sock, *endpoint));
}
// Unsupported requests. Should result in NOTIMP.
@@ -151,7 +144,7 @@ SrvTestBase::shortMessage() {
// or malformed or could otherwise cause a protocol error.
void
SrvTestBase::response() {
- // A valid (although unusual) response
+ // A valid (although unusual) response
createDataFromFile("simpleresponse_fromWire.wire");
processMessage();
EXPECT_FALSE(dnsserv.hasAnswer());
@@ -242,6 +235,6 @@ SrvTestBase::axfrOverUDP() {
} // end of namespace isc
-// Local Variables:
+// Local Variables:
// mode: c++
-// End:
+// End:
diff --git a/src/lib/testutils/srv_test.h b/src/lib/testutils/srv_test.h
index e867595..a37d79b 100644
--- a/src/lib/testutils/srv_test.h
+++ b/src/lib/testutils/srv_test.h
@@ -25,6 +25,7 @@
#include <dns/rrtype.h>
#include "mockups.h"
+#include <boost/scoped_ptr.hpp>
namespace asiolink {
class IOSocket;
@@ -52,7 +53,6 @@ extern const unsigned int CD_FLAG;
class SrvTestBase : public ::testing::Test {
protected:
SrvTestBase();
- virtual ~SrvTestBase();
/// Let the server process a DNS message.
///
@@ -104,8 +104,8 @@ protected:
const isc::dns::RRClass qclass;
const isc::dns::RRType qtype;
asiolink::IOSocket* io_sock;
- asiolink::IOMessage* io_message;
- const asiolink::IOEndpoint* endpoint;
+ boost::scoped_ptr<asiolink::IOMessage> io_message;
+ boost::scoped_ptr<const asiolink::IOEndpoint> endpoint;
isc::dns::MessageRenderer request_renderer;
isc::util::OutputBufferPtr response_obuffer;
std::vector<uint8_t> data;
@@ -114,6 +114,6 @@ protected:
} // end of namespace isc
#endif // ISC_TESTUTILS_SRVTEST_H
-// Local Variables:
+// Local Variables:
// mode: c++
-// End:
+// End:
More information about the bind10-changes
mailing list