mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-29 13:07:50 +00:00
[3417] Bind10 => Kea in many .cc/.h files
This commit is contained in:
parent
3fe98e57f6
commit
393e456b54
@ -177,11 +177,11 @@ D2Controller::establishSession() {
|
|||||||
LOG_DEBUG(dctl_logger, DBGLVL_START_SHUT, DCTL_CCSESSION_STARTING)
|
LOG_DEBUG(dctl_logger, DBGLVL_START_SHUT, DCTL_CCSESSION_STARTING)
|
||||||
.arg(getAppName()).arg(getSpecFileName());
|
.arg(getAppName()).arg(getSpecFileName());
|
||||||
|
|
||||||
// Create the BIND10 command control session with the our IOService.
|
// Create the Bundy command control session with the our IOService.
|
||||||
cc_session_ = SessionPtr(new isc::cc::Session(
|
cc_session_ = SessionPtr(new isc::cc::Session(
|
||||||
getIOService()->get_io_service()));
|
getIOService()->get_io_service()));
|
||||||
|
|
||||||
// Create the BIND10 config session with the stub configuration handler.
|
// Create the Bundy config session with the stub configuration handler.
|
||||||
// This handler is internally invoked by the constructor and on success
|
// This handler is internally invoked by the constructor and on success
|
||||||
// the constructor updates the current session with the configuration that
|
// the constructor updates the current session with the configuration that
|
||||||
// had been committed in the previous session. If we do not install
|
// had been committed in the previous session. If we do not install
|
||||||
@ -219,12 +219,12 @@ void D2Controller::disconnectSession() {
|
|||||||
LOG_DEBUG(dctl_logger, DBGLVL_START_SHUT, DCTL_CCSESSION_ENDING)
|
LOG_DEBUG(dctl_logger, DBGLVL_START_SHUT, DCTL_CCSESSION_ENDING)
|
||||||
.arg(getAppName());
|
.arg(getAppName());
|
||||||
|
|
||||||
// Destroy the BIND10 config session.
|
// Destroy the Bundy config session.
|
||||||
if (config_session_) {
|
if (config_session_) {
|
||||||
config_session_.reset();
|
config_session_.reset();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Destroy the BIND10 command and control session.
|
// Destroy the Bundy command and control session.
|
||||||
if (cc_session_) {
|
if (cc_session_) {
|
||||||
cc_session_->disconnect();
|
cc_session_->disconnect();
|
||||||
cc_session_.reset();
|
cc_session_.reset();
|
||||||
|
@ -98,7 +98,7 @@ public:
|
|||||||
/// in their main function. Such logger uses environmental variables to
|
/// in their main function. Such logger uses environmental variables to
|
||||||
/// control severity, verbosity etc. Reinitialization of logger by this
|
/// control severity, verbosity etc. Reinitialization of logger by this
|
||||||
/// function would replace unit tests specific logger configuration with
|
/// function would replace unit tests specific logger configuration with
|
||||||
/// this suitable for D2 running as a bind10 module.
|
/// this suitable for D2 running as a Bundy module.
|
||||||
///
|
///
|
||||||
/// @param argc is the number of command line arguments supplied
|
/// @param argc is the number of command line arguments supplied
|
||||||
/// @param argv is the array of string (char *) command line arguments
|
/// @param argv is the array of string (char *) command line arguments
|
||||||
|
@ -60,7 +60,7 @@ namespace d2 {
|
|||||||
/// that the application can carry out DNS update exchanges with it. Servers
|
/// that the application can carry out DNS update exchanges with it. Servers
|
||||||
/// are represented by the class, DnsServerInfo.
|
/// are represented by the class, DnsServerInfo.
|
||||||
///
|
///
|
||||||
/// The configuration specification for use with BIND10 is detailed in the file
|
/// The configuration specification for use with Kea is detailed in the file
|
||||||
/// dhcp-ddns.spec.
|
/// dhcp-ddns.spec.
|
||||||
///
|
///
|
||||||
/// The parsing class hierarchy reflects this same scheme. Working top down:
|
/// The parsing class hierarchy reflects this same scheme. Working top down:
|
||||||
|
@ -54,7 +54,7 @@ events is called. This only happens during initial startup.
|
|||||||
A debug message indicating that the controller has received an
|
A debug message indicating that the controller has received an
|
||||||
updated configuration from the Kea configuration system.
|
updated configuration from the Kea configuration system.
|
||||||
|
|
||||||
% DCTL_DISCONNECT_FAIL %1 controller failed to end session with Kea: %2
|
% DCTL_DISCONNECT_FAIL %1 controller failed to end session with Bundy: %2
|
||||||
This message indicates that while shutting down, the DHCP-DDNS controller
|
This message indicates that while shutting down, the DHCP-DDNS controller
|
||||||
encountered an error terminating communication with the Kea configuration
|
encountered an error terminating communication with the Kea configuration
|
||||||
system. The service will still exit. While theoretically possible,
|
system. The service will still exit. While theoretically possible,
|
||||||
|
@ -209,7 +209,7 @@ D2Process::configure(isc::data::ConstElementPtr config_set) {
|
|||||||
if (rcode) {
|
if (rcode) {
|
||||||
// Non-zero means we got an invalid configuration, take no further
|
// Non-zero means we got an invalid configuration, take no further
|
||||||
// action. In integrated mode, this will send a failed response back
|
// action. In integrated mode, this will send a failed response back
|
||||||
// to BIND10.
|
// to the configuration backend.
|
||||||
reconf_queue_flag_ = false;
|
reconf_queue_flag_ = false;
|
||||||
return (answer);
|
return (answer);
|
||||||
}
|
}
|
||||||
|
@ -25,7 +25,7 @@ using namespace isc::d2;
|
|||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
/// This file contains entry point (main() function) for standard DHCP-DDNS
|
/// This file contains entry point (main() function) for standard DHCP-DDNS
|
||||||
/// process, kea-dhcp-ddns, component for BIND10 framework. It fetches
|
/// process, kea-dhcp-ddns, component of Kea software suite. It fetches
|
||||||
/// the D2Controller singleton instance and invokes its launch method.
|
/// the D2Controller singleton instance and invokes its launch method.
|
||||||
/// The exit value of the program will be EXIT_SUCCESS if there were no
|
/// The exit value of the program will be EXIT_SUCCESS if there were no
|
||||||
/// errors, EXIT_FAILURE otherwise.
|
/// errors, EXIT_FAILURE otherwise.
|
||||||
|
@ -176,8 +176,8 @@ TEST_F(BundyD2ControllerTest, executeCommandTests) {
|
|||||||
|
|
||||||
/// @brief Tests launch with a session establishment failure.
|
/// @brief Tests launch with a session establishment failure.
|
||||||
/// This test launches with a valid command line for integrated mode and no.
|
/// This test launches with a valid command line for integrated mode and no.
|
||||||
/// Attempting to connect to BIND10 should fail, even if BIND10 is running
|
/// Attempting to connect to Bundy should fail, even if Bundy is running
|
||||||
/// UNLESS the test is run as root. Launch should throw SessionStartError.
|
/// UNLESS the test is run as root. Launch should throw SessionStartError.
|
||||||
TEST_F(BundyD2ControllerTest, launchSessionFailure) {
|
TEST_F(BundyD2ControllerTest, launchSessionFailure) {
|
||||||
// Command line to run integrated
|
// Command line to run integrated
|
||||||
char* argv[] = { (char*)"progName" };
|
char* argv[] = { (char*)"progName" };
|
||||||
|
@ -184,7 +184,7 @@ public:
|
|||||||
};
|
};
|
||||||
|
|
||||||
/// @brief Tests that the spec file is valid.
|
/// @brief Tests that the spec file is valid.
|
||||||
/// Verifies that the BIND10 DHCP-DDNS configuration specification file
|
/// Verifies that the DHCP-DDNS configuration specification file
|
||||||
// is valid.
|
// is valid.
|
||||||
TEST(D2SpecTest, basicSpec) {
|
TEST(D2SpecTest, basicSpec) {
|
||||||
ASSERT_NO_THROW(isc::config::
|
ASSERT_NO_THROW(isc::config::
|
||||||
|
@ -192,8 +192,8 @@ public:
|
|||||||
/// without polluting production derivations (e.g. D2Process). It uses
|
/// without polluting production derivations (e.g. D2Process). It uses
|
||||||
/// DStubProcess as its application process class. It is a full enough
|
/// DStubProcess as its application process class. It is a full enough
|
||||||
/// implementation to support running both stand alone and integrated.
|
/// implementation to support running both stand alone and integrated.
|
||||||
/// Obviously BIND10 connectivity is not available under unit tests, so
|
/// Obviously Bundy connectivity is not available under unit tests, so
|
||||||
/// testing here is limited to "failures" to communicate with BIND10.
|
/// testing here is limited to "failures" to communicate with Bundy.
|
||||||
class DStubController : public DControllerBase {
|
class DStubController : public DControllerBase {
|
||||||
public:
|
public:
|
||||||
/// @brief Static singleton instance method. This method returns the
|
/// @brief Static singleton instance method. This method returns the
|
||||||
|
@ -27,7 +27,7 @@ using namespace isc::dhcp;
|
|||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
/// This file contains entry point (main() function) for standard DHCPv4 server
|
/// This file contains entry point (main() function) for standard DHCPv4 server
|
||||||
/// component for BIND10 framework. It parses command-line arguments and
|
/// component for Kea software suite. It parses command-line arguments and
|
||||||
/// instantiates ControlledDhcpv4Srv class that is responsible for establishing
|
/// instantiates ControlledDhcpv4Srv class that is responsible for establishing
|
||||||
/// connection with msgq (receiving commands and configuration) and also
|
/// connection with msgq (receiving commands and configuration) and also
|
||||||
/// creating Dhcpv4 server object as well.
|
/// creating Dhcpv4 server object as well.
|
||||||
|
@ -63,7 +63,7 @@ appendDigit(const char* name) {
|
|||||||
// Framework functions
|
// Framework functions
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -63,8 +63,7 @@ std::string specfile(const std::string& name) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// @brief Tests that the spec file is valid.
|
/// @brief Tests that the spec file is valid.
|
||||||
/// Verifies that the BIND10 DHCP-DDNS configuration specification file
|
/// Verifies that the Kea DHCPv4 configuration specification file is valid.
|
||||||
// is valid.
|
|
||||||
TEST(Dhcp4SpecTest, basicSpec) {
|
TEST(Dhcp4SpecTest, basicSpec) {
|
||||||
(isc::config::moduleSpecFromFile(specfile("dhcp4.spec")));
|
(isc::config::moduleSpecFromFile(specfile("dhcp4.spec")));
|
||||||
ASSERT_NO_THROW(isc::config::moduleSpecFromFile(specfile("dhcp4.spec")));
|
ASSERT_NO_THROW(isc::config::moduleSpecFromFile(specfile("dhcp4.spec")));
|
||||||
|
@ -251,7 +251,7 @@ TEST_F(JSONFileBackendTest, configBroken) {
|
|||||||
///
|
///
|
||||||
/// @todo: Unfortunately, we have this test disabled, because all loaded
|
/// @todo: Unfortunately, we have this test disabled, because all loaded
|
||||||
/// configs use memfile, which attempts to create lease file in
|
/// configs use memfile, which attempts to create lease file in
|
||||||
/// /usr/local/var/bind10/kea-leases4.csv. We have couple options here:
|
/// /usr/local/var/kea/kea-leases4.csv. We have couple options here:
|
||||||
/// a) disable persistence in example configs - a very bad thing to do
|
/// a) disable persistence in example configs - a very bad thing to do
|
||||||
/// as users will forget to reenable it and then will be surprised when their
|
/// as users will forget to reenable it and then will be surprised when their
|
||||||
/// leases disappear
|
/// leases disappear
|
||||||
|
@ -28,7 +28,7 @@ using namespace isc::dhcp;
|
|||||||
using namespace std;
|
using namespace std;
|
||||||
|
|
||||||
/// This file contains entry point (main() function) for standard DHCPv6 server
|
/// This file contains entry point (main() function) for standard DHCPv6 server
|
||||||
/// component for BIND10 framework. It parses command-line arguments and
|
/// component for Kea software suite. It parses command-line arguments and
|
||||||
/// instantiates ControlledDhcpv6Srv class that is responsible for establishing
|
/// instantiates ControlledDhcpv6Srv class that is responsible for establishing
|
||||||
/// connection with msgq (receiving commands and configuration) and also
|
/// connection with msgq (receiving commands and configuration) and also
|
||||||
/// creating Dhcpv6 server object as well.
|
/// creating Dhcpv6 server object as well.
|
||||||
@ -118,16 +118,16 @@ main(int argc, char* argv[]) {
|
|||||||
ControlledDhcpv6Srv server(port_number);
|
ControlledDhcpv6Srv server(port_number);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// Initialize the server, i.e. establish control session
|
// Initialize the server, e.g. establish control session
|
||||||
// if BIND10 backend is used or read a configuration file
|
// if Bundy backend is used or read a configuration file
|
||||||
// if Kea backend is used.
|
// if Kea backend is used.
|
||||||
server.init(config_file);
|
server.init(config_file);
|
||||||
|
|
||||||
} catch (const std::exception& ex) {
|
} catch (const std::exception& ex) {
|
||||||
LOG_ERROR(dhcp6_logger, DHCP6_INIT_FAIL).arg(ex.what());
|
LOG_ERROR(dhcp6_logger, DHCP6_INIT_FAIL).arg(ex.what());
|
||||||
|
|
||||||
// We should not continue if were told to configure (either read
|
// We should not continue, just flush whatever has been logged
|
||||||
// config file or establish BIND10 control session).
|
// and exit.
|
||||||
isc::log::LoggerManager log_manager;
|
isc::log::LoggerManager log_manager;
|
||||||
log_manager.process();
|
log_manager.process();
|
||||||
|
|
||||||
|
@ -63,7 +63,7 @@ appendDigit(const char* name) {
|
|||||||
// Framework functions
|
// Framework functions
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -19,7 +19,7 @@ extern "C" {
|
|||||||
|
|
||||||
/// @brief Version function required by Hooks API for compatibility checks.
|
/// @brief Version function required by Hooks API for compatibility checks.
|
||||||
int version() {
|
int version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -80,7 +80,7 @@ const int server_port = 5553;
|
|||||||
const char* const server_port_str = "5553";
|
const char* const server_port_str = "5553";
|
||||||
//message client send to udp server, which isn't dns package
|
//message client send to udp server, which isn't dns package
|
||||||
//just for simple testing
|
//just for simple testing
|
||||||
const char* const query_message = "BIND10 is awesome";
|
const char* const query_message = "Kea is awesome";
|
||||||
|
|
||||||
// \brief provide capacity to derived class the ability
|
// \brief provide capacity to derived class the ability
|
||||||
// to stop DNSServer at certain point
|
// to stop DNSServer at certain point
|
||||||
@ -649,7 +649,7 @@ TYPED_TEST(DNSServerTest, TCPNoTimeout) {
|
|||||||
this->tcp_client_->setSendDataDelay(1);
|
this->tcp_client_->setSendDataDelay(1);
|
||||||
this->testStopServerByStopper(*this->tcp_server_, this->tcp_client_,
|
this->testStopServerByStopper(*this->tcp_server_, this->tcp_client_,
|
||||||
this->tcp_client_);
|
this->tcp_client_);
|
||||||
EXPECT_EQ("BIND10 is awesome", this->tcp_client_->getReceivedData());
|
EXPECT_EQ("Kea is awesome", this->tcp_client_->getReceivedData());
|
||||||
EXPECT_TRUE(this->serverStopSucceed());
|
EXPECT_TRUE(this->serverStopSucceed());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -16,8 +16,8 @@
|
|||||||
// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
// OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
||||||
// PERFORMANCE OF THIS SOFTWARE.
|
// PERFORMANCE OF THIS SOFTWARE.
|
||||||
|
|
||||||
#ifndef BIND10_COMMON_DEFS_H
|
#ifndef KEA_COMMON_DEFS_H
|
||||||
#define BIND10_COMMON_DEFS_H
|
#define KEA_COMMON_DEFS_H
|
||||||
|
|
||||||
// \file proto_defs.h
|
// \file proto_defs.h
|
||||||
// \brief Common shared constants
|
// \brief Common shared constants
|
||||||
|
@ -309,10 +309,10 @@ public:
|
|||||||
void
|
void
|
||||||
Session::establish(const char* socket_file) {
|
Session::establish(const char* socket_file) {
|
||||||
if (socket_file == NULL) {
|
if (socket_file == NULL) {
|
||||||
socket_file = getenv("BIND10_MSGQ_SOCKET_FILE");
|
socket_file = getenv("BUNDY_MSGQ_SOCKET_FILE");
|
||||||
}
|
}
|
||||||
if (socket_file == NULL) {
|
if (socket_file == NULL) {
|
||||||
socket_file = BIND10_MSGQ_SOCKET_FILE;
|
socket_file = BUNDY_MSGQ_SOCKET_FILE;
|
||||||
}
|
}
|
||||||
|
|
||||||
impl_->establish(*socket_file);
|
impl_->establish(*socket_file);
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
#define BIND10_MSGQ_SOCKET_FILE "@@LOCALSTATEDIR@@/@PACKAGE@/msgq_socket"
|
#define BUNDY_MSGQ_SOCKET_FILE "@@LOCALSTATEDIR@@/@PACKAGE@/msgq_socket"
|
||||||
|
|
||||||
|
@ -84,7 +84,7 @@ public:
|
|||||||
|
|
||||||
~TestDomainSocket() {
|
~TestDomainSocket() {
|
||||||
socket_.close();
|
socket_.close();
|
||||||
unlink(BIND10_TEST_SOCKET_FILE);
|
unlink(BUNDY_TEST_SOCKET_FILE);
|
||||||
}
|
}
|
||||||
|
|
||||||
void acceptHandler(const asio::error_code&) const {
|
void acceptHandler(const asio::error_code&) const {
|
||||||
@ -165,8 +165,8 @@ protected:
|
|||||||
SessionTest() : sess(my_io_service), work(my_io_service) {
|
SessionTest() : sess(my_io_service), work(my_io_service) {
|
||||||
// The TestDomainSocket is held as a 'new'-ed pointer,
|
// The TestDomainSocket is held as a 'new'-ed pointer,
|
||||||
// so we can call unlink() first.
|
// so we can call unlink() first.
|
||||||
unlink(BIND10_TEST_SOCKET_FILE);
|
unlink(BUNDY_TEST_SOCKET_FILE);
|
||||||
tds = new TestDomainSocket(my_io_service, BIND10_TEST_SOCKET_FILE);
|
tds = new TestDomainSocket(my_io_service, BUNDY_TEST_SOCKET_FILE);
|
||||||
}
|
}
|
||||||
|
|
||||||
~SessionTest() {
|
~SessionTest() {
|
||||||
@ -226,25 +226,25 @@ TEST_F(SessionTest, timeout_on_connect) {
|
|||||||
sess.setTimeout(100);
|
sess.setTimeout(100);
|
||||||
EXPECT_EQ(100, sess.getTimeout());
|
EXPECT_EQ(100, sess.getTimeout());
|
||||||
// no answer, should timeout
|
// no answer, should timeout
|
||||||
EXPECT_THROW(sess.establish(BIND10_TEST_SOCKET_FILE), SessionTimeout);
|
EXPECT_THROW(sess.establish(BUNDY_TEST_SOCKET_FILE), SessionTimeout);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(SessionTest, connect_ok) {
|
TEST_F(SessionTest, connect_ok) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(SessionTest, connect_ok_no_timeout) {
|
TEST_F(SessionTest, connect_ok_no_timeout) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
|
|
||||||
sess.setTimeout(0);
|
sess.setTimeout(0);
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
}
|
}
|
||||||
|
|
||||||
TEST_F(SessionTest, connect_ok_connection_reset) {
|
TEST_F(SessionTest, connect_ok_connection_reset) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
|
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
// Close the session again, so the next recv() should throw
|
// Close the session again, so the next recv() should throw
|
||||||
sess.disconnect();
|
sess.disconnect();
|
||||||
|
|
||||||
@ -255,7 +255,7 @@ TEST_F(SessionTest, connect_ok_connection_reset) {
|
|||||||
TEST_F(SessionTest, run_with_handler) {
|
TEST_F(SessionTest, run_with_handler) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
|
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
sess.startRead(boost::bind(&SessionTest::someHandler, this));
|
sess.startRead(boost::bind(&SessionTest::someHandler, this));
|
||||||
|
|
||||||
isc::data::ElementPtr env = isc::data::Element::fromJSON("{ \"to\": \"me\" }");
|
isc::data::ElementPtr env = isc::data::Element::fromJSON("{ \"to\": \"me\" }");
|
||||||
@ -279,7 +279,7 @@ TEST_F(SessionTest, run_with_handler) {
|
|||||||
TEST_F(SessionTest, run_with_handler_timeout) {
|
TEST_F(SessionTest, run_with_handler_timeout) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
|
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
sess.startRead(boost::bind(&SessionTest::someHandler, this));
|
sess.startRead(boost::bind(&SessionTest::someHandler, this));
|
||||||
sess.setTimeout(100);
|
sess.setTimeout(100);
|
||||||
|
|
||||||
@ -299,7 +299,7 @@ TEST_F(SessionTest, run_with_handler_timeout) {
|
|||||||
|
|
||||||
TEST_F(SessionTest, get_socket_descr) {
|
TEST_F(SessionTest, get_socket_descr) {
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
|
|
||||||
int socket = 0;
|
int socket = 0;
|
||||||
// session is established, so getSocketDesc() should work
|
// session is established, so getSocketDesc() should work
|
||||||
@ -313,7 +313,7 @@ TEST_F(SessionTest, get_socket_descr) {
|
|||||||
TEST_F(SessionTest, group_sendmsg) {
|
TEST_F(SessionTest, group_sendmsg) {
|
||||||
// Connect (to set the lname, so we can see it sets the from)
|
// Connect (to set the lname, so we can see it sets the from)
|
||||||
tds->setSendLname();
|
tds->setSendLname();
|
||||||
sess.establish(BIND10_TEST_SOCKET_FILE);
|
sess.establish(BUNDY_TEST_SOCKET_FILE);
|
||||||
// Eat the "get_lname" message, so it doesn't confuse the
|
// Eat the "get_lname" message, so it doesn't confuse the
|
||||||
// test below.
|
// test below.
|
||||||
sess.getSentMessage();
|
sess.getSentMessage();
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
#define BIND10_TEST_SOCKET_FILE "@builddir@/test_socket.sock"
|
#define BUNDY_TEST_SOCKET_FILE "@builddir@/test_socket.sock"
|
||||||
|
|
||||||
|
@ -1198,7 +1198,7 @@ TEST_F(IfaceMgrTest, sendReceive4) {
|
|||||||
// @todo: This part of the test is currently disabled on all BSD systems as it was
|
// @todo: This part of the test is currently disabled on all BSD systems as it was
|
||||||
// the quick fix. We need a more elegant (config-based) solution to disable
|
// the quick fix. We need a more elegant (config-based) solution to disable
|
||||||
// this check on affected systems only. The ticket has been submited for this
|
// this check on affected systems only. The ticket has been submited for this
|
||||||
// work: http://bind10.isc.org/ticket/2971
|
// work: http://kea.isc.org/ticket/2971
|
||||||
#ifndef OS_BSD
|
#ifndef OS_BSD
|
||||||
EXPECT_THROW(ifacemgr->receive4(10), SocketReadError);
|
EXPECT_THROW(ifacemgr->receive4(10), SocketReadError);
|
||||||
#endif
|
#endif
|
||||||
|
@ -22,7 +22,7 @@ namespace dhcp {
|
|||||||
|
|
||||||
/// This code is based on similar code from the Dibbler project. I, Tomasz Mrugalski,
|
/// This code is based on similar code from the Dibbler project. I, Tomasz Mrugalski,
|
||||||
/// as a sole creator of that code hereby release it under BSD license for the benefit
|
/// as a sole creator of that code hereby release it under BSD license for the benefit
|
||||||
/// of the BIND10 project.
|
/// of the Kea project.
|
||||||
|
|
||||||
/// @brief returns a first address in a given prefix
|
/// @brief returns a first address in a given prefix
|
||||||
///
|
///
|
||||||
|
@ -35,7 +35,7 @@ namespace dhcp {
|
|||||||
///
|
///
|
||||||
/// @todo This class doesn't validate the lease values read from the file.
|
/// @todo This class doesn't validate the lease values read from the file.
|
||||||
/// The @c Lease4 is a structure that should be itself responsible for this
|
/// The @c Lease4 is a structure that should be itself responsible for this
|
||||||
/// validation (see http://bind10.isc.org/ticket/2405). However, when #2405
|
/// validation (see http://kea.isc.org/ticket/2405). However, when #2405
|
||||||
/// is implemented, the @c next function may need to be updated to use the
|
/// is implemented, the @c next function may need to be updated to use the
|
||||||
/// validation capablity of @c Lease4.
|
/// validation capablity of @c Lease4.
|
||||||
class CSVLeaseFile4 : public isc::util::CSVFile {
|
class CSVLeaseFile4 : public isc::util::CSVFile {
|
||||||
@ -75,7 +75,7 @@ public:
|
|||||||
///
|
///
|
||||||
/// @todo Make sure that the values read from the file are correct.
|
/// @todo Make sure that the values read from the file are correct.
|
||||||
/// The appropriate @c Lease4 validation mechanism should be used once
|
/// The appropriate @c Lease4 validation mechanism should be used once
|
||||||
/// ticket http://bind10.isc.org/ticket/2405 is implemented.
|
/// ticket http://kea.isc.org/ticket/2405 is implemented.
|
||||||
bool next(Lease4Ptr& lease);
|
bool next(Lease4Ptr& lease);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -34,7 +34,7 @@ namespace dhcp {
|
|||||||
///
|
///
|
||||||
/// @todo This class doesn't validate the lease values read from the file.
|
/// @todo This class doesn't validate the lease values read from the file.
|
||||||
/// The @c Lease6 is a structure that should be itself responsible for this
|
/// The @c Lease6 is a structure that should be itself responsible for this
|
||||||
/// validation (see http://bind10.isc.org/ticket/2405). However, when #2405
|
/// validation (see http://kea.isc.org/ticket/2405). However, when #2405
|
||||||
/// is implemented, the @c next function may need to be updated to use the
|
/// is implemented, the @c next function may need to be updated to use the
|
||||||
/// validation capablity of @c Lease6.
|
/// validation capablity of @c Lease6.
|
||||||
class CSVLeaseFile6 : public isc::util::CSVFile {
|
class CSVLeaseFile6 : public isc::util::CSVFile {
|
||||||
@ -74,7 +74,7 @@ public:
|
|||||||
///
|
///
|
||||||
/// @todo Make sure that the values read from the file are correct.
|
/// @todo Make sure that the values read from the file are correct.
|
||||||
/// The appropriate @c Lease6 validation mechanism should be used once
|
/// The appropriate @c Lease6 validation mechanism should be used once
|
||||||
/// ticket http://bind10.isc.org/ticket/2405 is implemented.
|
/// ticket http://kea.isc.org/ticket/2405 is implemented.
|
||||||
bool next(Lease6Ptr& lease);
|
bool next(Lease6Ptr& lease);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
@ -66,8 +66,8 @@ namespace dhcp {
|
|||||||
/// parameter in the database access string. The [path] is the
|
/// parameter in the database access string. The [path] is the
|
||||||
/// absolute path to the file (including file name). If this parameter
|
/// absolute path to the file (including file name). If this parameter
|
||||||
/// is not specified, the default location in the installation
|
/// is not specified, the default location in the installation
|
||||||
/// directory is used: var/bind10/kea-leases4.csv and
|
/// directory is used: var/kea/kea-leases4.csv and
|
||||||
/// var/bind10/kea-leases6.csv.
|
/// var/kea/kea-leases6.csv.
|
||||||
class Memfile_LeaseMgr : public LeaseMgr {
|
class Memfile_LeaseMgr : public LeaseMgr {
|
||||||
public:
|
public:
|
||||||
|
|
||||||
|
@ -25,7 +25,7 @@ extern "C" {
|
|||||||
// Framework functions
|
// Framework functions
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -177,6 +177,6 @@ TEST_F(CSVLeaseFile4Test, recreate) {
|
|||||||
/// lease type, invalid preferred lifetime vs valid lifetime etc. The Lease6
|
/// lease type, invalid preferred lifetime vs valid lifetime etc. The Lease6
|
||||||
/// should be extended with the function that validates lease attributes. Once
|
/// should be extended with the function that validates lease attributes. Once
|
||||||
/// this is implemented we should provide more tests for malformed leases
|
/// this is implemented we should provide more tests for malformed leases
|
||||||
/// in the CSV file. See http://bind10.isc.org/ticket/2405.
|
/// in the CSV file. See http://kea.isc.org/ticket/2405.
|
||||||
|
|
||||||
} // end of anonymous namespace
|
} // end of anonymous namespace
|
||||||
|
@ -218,6 +218,6 @@ TEST_F(CSVLeaseFile6Test, recreate) {
|
|||||||
/// lease type, invalid preferred lifetime vs valid lifetime etc. The Lease6
|
/// lease type, invalid preferred lifetime vs valid lifetime etc. The Lease6
|
||||||
/// should be extended with the function that validates lease attributes. Once
|
/// should be extended with the function that validates lease attributes. Once
|
||||||
/// this is implemented we should provide more tests for malformed leases
|
/// this is implemented we should provide more tests for malformed leases
|
||||||
/// in the CSV file. See http://bind10.isc.org/ticket/2405.
|
/// in the CSV file. See http://kea.isc.org/ticket/2405.
|
||||||
|
|
||||||
} // end of anonymous namespace
|
} // end of anonymous namespace
|
||||||
|
@ -248,7 +248,7 @@ TEST_F(DbAccessParserTest, emptyKeyword) {
|
|||||||
TEST_F(DbAccessParserTest, persistV4Memfile) {
|
TEST_F(DbAccessParserTest, persistV4Memfile) {
|
||||||
const char* config[] = {"type", "memfile",
|
const char* config[] = {"type", "memfile",
|
||||||
"persist", "true",
|
"persist", "true",
|
||||||
"name", "/opt/bind10/var/kea-leases4.csv",
|
"name", "/opt/kea/var/kea-leases4.csv",
|
||||||
NULL};
|
NULL};
|
||||||
|
|
||||||
string json_config = toJson(config);
|
string json_config = toJson(config);
|
||||||
@ -267,7 +267,7 @@ TEST_F(DbAccessParserTest, persistV4Memfile) {
|
|||||||
TEST_F(DbAccessParserTest, persistV6Memfile) {
|
TEST_F(DbAccessParserTest, persistV6Memfile) {
|
||||||
const char* config[] = {"type", "memfile",
|
const char* config[] = {"type", "memfile",
|
||||||
"persist", "true",
|
"persist", "true",
|
||||||
"name", "/opt/bind10/var/kea-leases6.csv",
|
"name", "/opt/kea/var/kea-leases6.csv",
|
||||||
NULL};
|
NULL};
|
||||||
|
|
||||||
string json_config = toJson(config);
|
string json_config = toJson(config);
|
||||||
|
@ -22,7 +22,7 @@
|
|||||||
namespace {
|
namespace {
|
||||||
|
|
||||||
// Version 1 of the hooks framework.
|
// Version 1 of the hooks framework.
|
||||||
const int BIND10_HOOKS_VERSION = 1;
|
const int KEA_HOOKS_VERSION = 1;
|
||||||
|
|
||||||
// Names of the framework functions.
|
// Names of the framework functions.
|
||||||
const char* const LOAD_FUNCTION_NAME = "load";
|
const char* const LOAD_FUNCTION_NAME = "load";
|
||||||
|
@ -111,7 +111,7 @@ LibraryManager::checkVersion() const {
|
|||||||
// Get the pointer to the "version" function.
|
// Get the pointer to the "version" function.
|
||||||
PointerConverter pc(dlsym(dl_handle_, VERSION_FUNCTION_NAME));
|
PointerConverter pc(dlsym(dl_handle_, VERSION_FUNCTION_NAME));
|
||||||
if (pc.versionPtr() != NULL) {
|
if (pc.versionPtr() != NULL) {
|
||||||
int version = BIND10_HOOKS_VERSION - 1; // This is an invalid value
|
int version = KEA_HOOKS_VERSION - 1; // This is an invalid value
|
||||||
try {
|
try {
|
||||||
version = (*pc.versionPtr())();
|
version = (*pc.versionPtr())();
|
||||||
} catch (...) {
|
} catch (...) {
|
||||||
@ -119,7 +119,7 @@ LibraryManager::checkVersion() const {
|
|||||||
return (false);
|
return (false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (version == BIND10_HOOKS_VERSION) {
|
if (version == KEA_HOOKS_VERSION) {
|
||||||
// All OK, version checks out
|
// All OK, version checks out
|
||||||
LOG_DEBUG(hooks_logger, HOOKS_DBG_CALLS, HOOKS_LIBRARY_VERSION)
|
LOG_DEBUG(hooks_logger, HOOKS_DBG_CALLS, HOOKS_LIBRARY_VERSION)
|
||||||
.arg(library_name_).arg(version);
|
.arg(library_name_).arg(version);
|
||||||
@ -127,7 +127,7 @@ LibraryManager::checkVersion() const {
|
|||||||
|
|
||||||
} else {
|
} else {
|
||||||
LOG_ERROR(hooks_logger, HOOKS_INCORRECT_VERSION).arg(library_name_)
|
LOG_ERROR(hooks_logger, HOOKS_INCORRECT_VERSION).arg(library_name_)
|
||||||
.arg(version).arg(BIND10_HOOKS_VERSION);
|
.arg(version).arg(KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
LOG_ERROR(hooks_logger, HOOKS_NO_VERSION).arg(library_name_);
|
LOG_ERROR(hooks_logger, HOOKS_NO_VERSION).arg(library_name_);
|
||||||
|
@ -108,7 +108,7 @@ hookpt_three(CalloutHandle& handle) {
|
|||||||
|
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
// load() initializes the user library if the main image was statically linked.
|
// load() initializes the user library if the main image was statically linked.
|
||||||
|
@ -111,7 +111,7 @@ hook_nonstandard_three(CalloutHandle& handle) {
|
|||||||
|
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -27,7 +27,7 @@
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
|
|
||||||
int version() {
|
int version() {
|
||||||
return (BIND10_HOOKS_VERSION + 1);
|
return (KEA_HOOKS_VERSION + 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
};
|
};
|
||||||
|
@ -104,7 +104,7 @@ hook_nonstandard_three(CalloutHandle& handle) {
|
|||||||
|
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int load(LibraryHandle& handle) {
|
int load(LibraryHandle& handle) {
|
||||||
|
@ -32,7 +32,7 @@ extern "C" {
|
|||||||
|
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -36,7 +36,7 @@ extern "C" {
|
|||||||
|
|
||||||
int
|
int
|
||||||
version() {
|
version() {
|
||||||
return (BIND10_HOOKS_VERSION);
|
return (KEA_HOOKS_VERSION);
|
||||||
}
|
}
|
||||||
|
|
||||||
int
|
int
|
||||||
|
@ -51,7 +51,7 @@ int& initDebugLevel() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
std::string& initRootName() {
|
std::string& initRootName() {
|
||||||
static std::string root("bind10");
|
static std::string root("kea");
|
||||||
return (root);
|
return (root);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -150,9 +150,9 @@ resetUnitTestRootLogger() {
|
|||||||
void initLogger(isc::log::Severity severity, int dbglevel) {
|
void initLogger(isc::log::Severity severity, int dbglevel) {
|
||||||
|
|
||||||
// Root logger name is defined by the environment variable B10_LOGGER_ROOT.
|
// Root logger name is defined by the environment variable B10_LOGGER_ROOT.
|
||||||
// If not present, the name is "bind10".
|
// If not present, the name is "kea".
|
||||||
const char* DEFAULT_ROOT = "bind10";
|
const char* DEFAULT_ROOT = "kea";
|
||||||
const char* root = getenv("B10_LOGGER_ROOT");
|
const char* root = getenv("KEA_LOGGER_ROOT");
|
||||||
if (! root) {
|
if (! root) {
|
||||||
root = DEFAULT_ROOT;
|
root = DEFAULT_ROOT;
|
||||||
}
|
}
|
||||||
|
@ -34,7 +34,7 @@ namespace log {
|
|||||||
/// environment variables. These are:
|
/// environment variables. These are:
|
||||||
///
|
///
|
||||||
/// - B10_LOGGER_ROOT\n
|
/// - B10_LOGGER_ROOT\n
|
||||||
/// Name of the root logger. If not given, the string "bind10" will be used.
|
/// Name of the root logger. If not given, the string "kea" will be used.
|
||||||
///
|
///
|
||||||
/// - B10_LOGGER_SEVERITY\n
|
/// - B10_LOGGER_SEVERITY\n
|
||||||
/// Severity of messages that will be logged. This must be one of the strings
|
/// Severity of messages that will be logged. This must be one of the strings
|
||||||
|
@ -37,13 +37,13 @@ echo "1. Checking that B10_LOGGER_SEVERITY/B10_LOGGER_DBGLEVEL work"
|
|||||||
|
|
||||||
echo -n " - severity=DEBUG, dbglevel=99: "
|
echo -n " - severity=DEBUG, dbglevel=99: "
|
||||||
cat > $tempfile << .
|
cat > $tempfile << .
|
||||||
DEBUG [bind10.log] LOG_BAD_DESTINATION unrecognized log destination: debug-0
|
DEBUG [kea.log] LOG_BAD_DESTINATION unrecognized log destination: debug-0
|
||||||
DEBUG [bind10.log] LOG_BAD_DESTINATION unrecognized log destination: debug-50
|
DEBUG [kea.log] LOG_BAD_DESTINATION unrecognized log destination: debug-50
|
||||||
DEBUG [bind10.log] LOG_BAD_DESTINATION unrecognized log destination: debug-99
|
DEBUG [kea.log] LOG_BAD_DESTINATION unrecognized log destination: debug-99
|
||||||
INFO [bind10.log] LOG_BAD_SEVERITY unrecognized log severity: info
|
INFO [kea.log] LOG_BAD_SEVERITY unrecognized log severity: info
|
||||||
WARN [bind10.log] LOG_BAD_STREAM bad log console output stream: warn
|
WARN [kea.log] LOG_BAD_STREAM bad log console output stream: warn
|
||||||
ERROR [bind10.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
ERROR [kea.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
||||||
FATAL [bind10.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
FATAL [kea.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
||||||
.
|
.
|
||||||
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=DEBUG B10_LOGGER_DBGLEVEL=99 ./init_logger_test | \
|
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=DEBUG B10_LOGGER_DBGLEVEL=99 ./init_logger_test | \
|
||||||
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
||||||
@ -52,12 +52,12 @@ passfail $?
|
|||||||
|
|
||||||
echo -n " - severity=DEBUG, dbglevel=50: "
|
echo -n " - severity=DEBUG, dbglevel=50: "
|
||||||
cat > $tempfile << .
|
cat > $tempfile << .
|
||||||
DEBUG [bind10.log] LOG_BAD_DESTINATION unrecognized log destination: debug-0
|
DEBUG [kea.log] LOG_BAD_DESTINATION unrecognized log destination: debug-0
|
||||||
DEBUG [bind10.log] LOG_BAD_DESTINATION unrecognized log destination: debug-50
|
DEBUG [kea.log] LOG_BAD_DESTINATION unrecognized log destination: debug-50
|
||||||
INFO [bind10.log] LOG_BAD_SEVERITY unrecognized log severity: info
|
INFO [kea.log] LOG_BAD_SEVERITY unrecognized log severity: info
|
||||||
WARN [bind10.log] LOG_BAD_STREAM bad log console output stream: warn
|
WARN [kea.log] LOG_BAD_STREAM bad log console output stream: warn
|
||||||
ERROR [bind10.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
ERROR [kea.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
||||||
FATAL [bind10.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
FATAL [kea.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
||||||
.
|
.
|
||||||
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=DEBUG B10_LOGGER_DBGLEVEL=50 ./init_logger_test | \
|
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=DEBUG B10_LOGGER_DBGLEVEL=50 ./init_logger_test | \
|
||||||
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
||||||
@ -66,9 +66,9 @@ passfail $?
|
|||||||
|
|
||||||
echo -n " - severity=WARN: "
|
echo -n " - severity=WARN: "
|
||||||
cat > $tempfile << .
|
cat > $tempfile << .
|
||||||
WARN [bind10.log] LOG_BAD_STREAM bad log console output stream: warn
|
WARN [kea.log] LOG_BAD_STREAM bad log console output stream: warn
|
||||||
ERROR [bind10.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
ERROR [kea.log] LOG_DUPLICATE_MESSAGE_ID duplicate message ID (error) in compiled code
|
||||||
FATAL [bind10.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
FATAL [kea.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
||||||
.
|
.
|
||||||
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=WARN ./init_logger_test | \
|
B10_LOGGER_DESTINATION=stdout B10_LOGGER_SEVERITY=WARN ./init_logger_test | \
|
||||||
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
sed -e 's/\[\([a-z0-9\.]\{1,\}\)\/\([0-9]\{1,\}\)\]/[\1]/' | \
|
||||||
@ -79,7 +79,7 @@ echo "2. Checking that B10_LOGGER_DESTINATION works"
|
|||||||
|
|
||||||
echo -n " - stdout: "
|
echo -n " - stdout: "
|
||||||
cat > $tempfile << .
|
cat > $tempfile << .
|
||||||
FATAL [bind10.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
FATAL [kea.log] LOG_NO_MESSAGE_ID line fatal: message definition line found without a message ID
|
||||||
.
|
.
|
||||||
rm -f $destfile_tmp $destfile
|
rm -f $destfile_tmp $destfile
|
||||||
B10_LOGGER_SEVERITY=FATAL B10_LOGGER_DESTINATION=stdout ./init_logger_test 1> $destfile_tmp
|
B10_LOGGER_SEVERITY=FATAL B10_LOGGER_DESTINATION=stdout ./init_logger_test 1> $destfile_tmp
|
||||||
|
@ -33,7 +33,7 @@ echo -n "Testing that logger acquires and releases locks correctly:"
|
|||||||
cat > $tempfile << .
|
cat > $tempfile << .
|
||||||
LOGGER_LOCK_TEST: MUTEXLOCK
|
LOGGER_LOCK_TEST: MUTEXLOCK
|
||||||
LOGGER_LOCK_TEST: LOCK
|
LOGGER_LOCK_TEST: LOCK
|
||||||
INFO [bind10.log] LOG_LOCK_TEST_MESSAGE this is a test message.
|
INFO [kea.log] LOG_LOCK_TEST_MESSAGE this is a test message.
|
||||||
LOGGER_LOCK_TEST: UNLOCK
|
LOGGER_LOCK_TEST: UNLOCK
|
||||||
.
|
.
|
||||||
rm -f $destfile
|
rm -f $destfile
|
||||||
|
@ -114,7 +114,7 @@ public:
|
|||||||
//
|
//
|
||||||
// \return Temporary file name
|
// \return Temporary file name
|
||||||
std::string createTempFilename() {
|
std::string createTempFilename() {
|
||||||
string filename = TEMP_DIR + "/bind10_logger_manager_test_XXXXXX";
|
string filename = TEMP_DIR + "/kea_logger_manager_test_XXXXXX";
|
||||||
|
|
||||||
// Copy into writeable storage for the call to mkstemp
|
// Copy into writeable storage for the call to mkstemp
|
||||||
boost::scoped_array<char> tname(new char[filename.size() + 1]);
|
boost::scoped_array<char> tname(new char[filename.size() + 1]);
|
||||||
|
@ -46,7 +46,7 @@ public:
|
|||||||
///
|
///
|
||||||
/// Applications normally use this class only in a limited situation: as an
|
/// Applications normally use this class only in a limited situation: as an
|
||||||
/// interface between legacy I/O operation (such as receiving data from a BSD
|
/// interface between legacy I/O operation (such as receiving data from a BSD
|
||||||
/// socket) and the rest of the BIND10 DNS library. One common usage of this
|
/// socket) and the rest of the Kea DNS library. One common usage of this
|
||||||
/// class for an application would therefore be something like this:
|
/// class for an application would therefore be something like this:
|
||||||
///
|
///
|
||||||
/// \code unsigned char buf[1024];
|
/// \code unsigned char buf[1024];
|
||||||
@ -56,7 +56,7 @@ public:
|
|||||||
/// InputBuffer buffer(buf, cc);
|
/// InputBuffer buffer(buf, cc);
|
||||||
/// // pass the buffer to a DNS message object to parse the message \endcode
|
/// // pass the buffer to a DNS message object to parse the message \endcode
|
||||||
///
|
///
|
||||||
/// Other BIND10 DNS classes will then use methods of this class to get access
|
/// Other Kea DNS classes will then use methods of this class to get access
|
||||||
/// to the data, but the application normally doesn't have to care about the
|
/// to the data, but the application normally doesn't have to care about the
|
||||||
/// details.
|
/// details.
|
||||||
///
|
///
|
||||||
|
@ -54,7 +54,7 @@ namespace {
|
|||||||
const char* const TEST_UNIX_FILE = TEST_DATA_TOPBUILDDIR "/test.unix";
|
const char* const TEST_UNIX_FILE = TEST_DATA_TOPBUILDDIR "/test.unix";
|
||||||
const char* const TEST_PORT = "53535";
|
const char* const TEST_PORT = "53535";
|
||||||
const char* const TEST_PORT2 = "53536"; // use this in case we need 2 ports
|
const char* const TEST_PORT2 = "53536"; // use this in case we need 2 ports
|
||||||
const char TEST_DATA[] = "BIND10 test";
|
const char TEST_DATA[] = "Kea test";
|
||||||
|
|
||||||
// A simple helper structure to automatically close test sockets on return
|
// A simple helper structure to automatically close test sockets on return
|
||||||
// or exception in a RAII manner. non copyable to prevent duplicate close.
|
// or exception in a RAII manner. non copyable to prevent duplicate close.
|
||||||
|
Loading…
x
Reference in New Issue
Block a user