summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRazvan Becheriu <razvan@isc.org>2024-04-17 09:56:07 +0200
committerRazvan Becheriu <razvan@isc.org>2024-04-17 19:40:17 +0200
commit41d0286cea0947a13909d9680f55745ae2b6c40f (patch)
treecb4ee702c83ba39fdd41ef7443567d33b6c6e5b5 /src
parent[#3320] minor changes (diff)
downloadkea-41d0286cea0947a13909d9680f55745ae2b6c40f.tar.xz
kea-41d0286cea0947a13909d9680f55745ae2b6c40f.zip
[#3320] minor changes
Diffstat (limited to 'src')
-rw-r--r--src/lib/asiodns/Makefile.am10
-rw-r--r--src/lib/asiodns/asiodns_messages.mes2
-rw-r--r--src/lib/asiodns/io_fetch.cc18
-rw-r--r--src/lib/asiodns/io_fetch.h14
-rw-r--r--src/lib/asiodns/tests/Makefile.am52
-rw-r--r--src/lib/asiodns/tests/io_fetch_unittest.cc6
-rw-r--r--src/lib/asiodns/tests/run_unittests.cc14
-rw-r--r--src/lib/asiolink/dummy_io_cb.h2
-rw-r--r--src/lib/asiolink/interval_timer.cc2
-rw-r--r--src/lib/asiolink/interval_timer.h2
-rw-r--r--src/lib/asiolink/io_address.cc2
-rw-r--r--src/lib/asiolink/io_address.h2
-rw-r--r--src/lib/asiolink/io_asio_socket.h2
-rw-r--r--src/lib/asiolink/io_endpoint.cc2
-rw-r--r--src/lib/asiolink/io_endpoint.h2
-rw-r--r--src/lib/asiolink/io_error.h2
-rw-r--r--src/lib/asiolink/io_service.cc2
-rw-r--r--src/lib/asiolink/io_service.h2
-rw-r--r--src/lib/asiolink/io_socket.cc2
-rw-r--r--src/lib/asiolink/io_socket.h2
-rw-r--r--src/lib/asiolink/tcp_endpoint.h2
-rw-r--r--src/lib/asiolink/tcp_socket.h2
-rw-r--r--src/lib/asiolink/tests/io_address_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/io_endpoint_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/io_socket_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/tcp_endpoint_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/tcp_socket_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/udp_endpoint_unittest.cc2
-rw-r--r--src/lib/asiolink/tests/udp_socket_unittest.cc2
-rw-r--r--src/lib/asiolink/udp_endpoint.h2
-rw-r--r--src/lib/asiolink/udp_socket.h2
-rw-r--r--src/lib/dns/Makefile.am2
-rw-r--r--src/lib/dns/message.cc2
-rw-r--r--src/lib/dns/message.h4
-rw-r--r--src/lib/dns/messagerenderer.cc4
-rw-r--r--src/lib/dns/name.cc2
-rw-r--r--src/lib/dns/name.h2
-rw-r--r--src/lib/dns/question.cc2
-rw-r--r--src/lib/dns/rdata.h2
-rw-r--r--src/lib/dns/rrclass.cc2
-rw-r--r--src/lib/dns/rrset.cc2
-rw-r--r--src/lib/dns/rrttl.cc2
-rw-r--r--src/lib/dns/rrtype.cc2
-rw-r--r--src/lib/log/compiler/message.cc2
-rw-r--r--src/lib/log/logger.cc2
-rw-r--r--src/lib/log/logger_impl.cc2
-rw-r--r--src/lib/util/Makefile.am10
-rw-r--r--src/lib/util/buffer.h210
-rw-r--r--src/lib/util/io/fd_share.cc60
-rw-r--r--src/lib/util/io/fd_share.h16
-rw-r--r--src/lib/util/tests/buffer_unittest.cc132
51 files changed, 313 insertions, 313 deletions
diff --git a/src/lib/asiodns/Makefile.am b/src/lib/asiodns/Makefile.am
index 53d8e0536c..5ac221b393 100644
--- a/src/lib/asiodns/Makefile.am
+++ b/src/lib/asiodns/Makefile.am
@@ -1,10 +1,10 @@
-SUBDIRS = . tests // @todo - please update
- // @todo - please update
+SUBDIRS = . tests
+
AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
-AM_CPPFLAGS += $(BOOST_INCLUDES) // @todo - please update
- // @todo - please update
+AM_CPPFLAGS += $(BOOST_INCLUDES)
+
AM_CXXFLAGS = $(KEA_CXXFLAGS)
- // @todo - please update
+
CLEANFILES = *.gcno *.gcda
EXTRA_DIST = asiodns_messages.mes
diff --git a/src/lib/asiodns/asiodns_messages.mes b/src/lib/asiodns/asiodns_messages.mes
index 07518add41..1f7f35eced 100644
--- a/src/lib/asiodns/asiodns_messages.mes
+++ b/src/lib/asiodns/asiodns_messages.mes
@@ -4,7 +4,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-$NAMESPACE isc::asiodns // @todo - please update
+$NAMESPACE isc::asiodns
% ASIODNS_FD_ADD_TCP adding a new TCP server by opened fd %1
A debug message informing about installing a file descriptor as a server.
diff --git a/src/lib/asiodns/io_fetch.cc b/src/lib/asiodns/io_fetch.cc
index 7370490ec6..742abc66e9 100644
--- a/src/lib/asiodns/io_fetch.cc
+++ b/src/lib/asiodns/io_fetch.cc
@@ -21,7 +21,7 @@
#include <cryptolink/crypto_rng.h>
#include <dns/rcode.h>
#include <util/io.h>
- // @todo - please update
+
#include <boost/scoped_ptr.hpp>
#include <boost/date_time/posix_time/posix_time_types.hpp>
@@ -31,7 +31,7 @@
#include <stdint.h>
#include <sys/socket.h>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
using namespace isc::dns;
using namespace isc::log;
using namespace isc::util;
@@ -39,8 +39,8 @@ using namespace isc::util;
using namespace boost::asio;
using namespace std;
-namespace isc { // @todo - please update
-namespace asiodns { // @todo - please update
+namespace isc {
+namespace asiodns {
// Log debug verbosity.
@@ -167,9 +167,9 @@ IOFetch::IOFetch(Protocol protocol, const IOServicePtr& service,
initIOFetch(question, protocol, service, **(query_message->beginQuestion()), address,
port, buff, cb, wait);
-} // @todo - please update
- // @todo - please update
-void // @todo - please update
+}
+
+void
IOFetch::initIOFetch(MessagePtr& query, Protocol protocol, const IOServicePtr& service,
const isc::dns::Question& question, const IOAddress& address, uint16_t port,
OutputBufferPtr& buff, Callback* cb, int wait, bool edns) {
@@ -190,8 +190,8 @@ IOFetch::initIOFetch(MessagePtr& query, Protocol protocol, const IOServicePtr& s
r.setBuffer(data_->msgbuf.get());
query->toWire(r);
r.setBuffer(NULL);
-} // @todo - please update
- // @todo - please update
+}
+
IOFetch::Protocol
IOFetch::getProtocol() const {
return (data_->protocol);
diff --git a/src/lib/asiodns/io_fetch.h b/src/lib/asiodns/io_fetch.h
index 40dbc76f4a..22ace29c4f 100644
--- a/src/lib/asiodns/io_fetch.h
+++ b/src/lib/asiodns/io_fetch.h
@@ -18,9 +18,9 @@
#include <ext/coroutine/coroutine.hpp>
#endif
-#include <asiolink/io_address.h> // @todo - please update
+#include <asiolink/io_address.h>
#include <asiolink/io_service.h>
-#include <dns/message.h> // @todo - please update
+#include <dns/message.h>
#include <dns/question.h>
#include <util/buffer.h>
@@ -29,8 +29,8 @@
#include <boost/date_time/posix_time/posix_time_types.hpp>
#include <boost/system/error_code.hpp>
-namespace isc { // @todo - please update
-namespace asiodns { // @todo - please update
+namespace isc {
+namespace asiodns {
// Forward declarations
struct IOFetchData;
@@ -136,7 +136,7 @@ public:
bool edns = true);
/// @brief Constructor
- /// // @todo - please update
+ ///
/// This constructor has one parameter "query_message", which is the shared_ptr
/// to a full query message. It's different with above constructor which has only
/// question section. All other parameters are the same.
@@ -163,7 +163,7 @@ public:
isc::util::OutputBufferPtr& buff,
Callback* cb,
int wait = -1);
- // @todo - please update
+
/// @brief Constructor.
///
/// Creates the object that will handle the upstream fetch.
@@ -237,7 +237,7 @@ private:
isc::util::OutputBufferPtr& buff,
Callback* cb, int wait,
bool edns = true);
- // @todo - please update
+
/// @brief Log I/O Failure.
///
/// Records an I/O failure to the log file.
diff --git a/src/lib/asiodns/tests/Makefile.am b/src/lib/asiodns/tests/Makefile.am
index 57b04581d3..323e453660 100644
--- a/src/lib/asiodns/tests/Makefile.am
+++ b/src/lib/asiodns/tests/Makefile.am
@@ -1,24 +1,24 @@
-AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib // @todo - please update
-AM_CPPFLAGS += $(BOOST_INCLUDES) // @todo - please update
- // @todo - please update
+AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
+AM_CPPFLAGS += $(BOOST_INCLUDES)
+
AM_CXXFLAGS = $(KEA_CXXFLAGS)
- // @todo - please update
-if USE_STATIC_LINK // @todo - please update
-AM_LDFLAGS = -static // @todo - please update
-endif // @todo - please update
- // @todo - please update
-CLEANFILES = *.gcno *.gcda // @todo - please update
- // @todo - please update
+
+if USE_STATIC_LINK
+AM_LDFLAGS = -static
+endif
+
+CLEANFILES = *.gcno *.gcda
+
TESTS_ENVIRONMENT = $(LIBTOOL) --mode=execute $(VALGRIND_COMMAND)
-TESTS = // @todo - please update
-if HAVE_GTEST // @todo - please update
-TESTS += run_unittests // @todo - please update
-run_unittests_SOURCES = run_unittests.cc // @todo - please update
-run_unittests_SOURCES += io_fetch_unittest.cc // @todo - please update
- // @todo - please update
-run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES) // @todo - please update
- // @todo - please update
+TESTS =
+if HAVE_GTEST
+TESTS += run_unittests
+run_unittests_SOURCES = run_unittests.cc
+run_unittests_SOURCES += io_fetch_unittest.cc
+
+run_unittests_CPPFLAGS = $(AM_CPPFLAGS) $(GTEST_INCLUDES)
+
run_unittests_LDADD = $(top_builddir)/src/lib/asiodns/libkea-asiodns.la
run_unittests_LDADD += $(top_builddir)/src/lib/asiolink/libkea-asiolink.la
run_unittests_LDADD += $(top_builddir)/src/lib/dns/libkea-dns++.la
@@ -29,14 +29,14 @@ run_unittests_LDADD += $(top_builddir)/src/lib/util/libkea-util.la
run_unittests_LDADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
run_unittests_LDADD += $(LOG4CPLUS_LIBS) $(CRYPTO_LIBS)
run_unittests_LDADD += $(BOOST_LIBS) $(GTEST_LDADD)
- // @todo - please update
+
run_unittests_LDFLAGS = $(AM_LDFLAGS) $(CRYPTO_LDFLAGS) $(GTEST_LDFLAGS)
- // @todo - please update
+
# Note: the ordering matters: -Wno-... must follow -Wextra (defined in KEA_CXXFLAGS)
-run_unittests_CXXFLAGS = $(AM_CXXFLAGS) // @todo - please update
-if USE_GXX // @todo - please update
-run_unittests_CXXFLAGS += -Wno-unused-parameter // @todo - please update
-endif // @todo - please update
-endif // @todo - please update
- // @todo - please update
+run_unittests_CXXFLAGS = $(AM_CXXFLAGS)
+if USE_GXX
+run_unittests_CXXFLAGS += -Wno-unused-parameter
+endif
+endif
+
noinst_PROGRAMS = $(TESTS)
diff --git a/src/lib/asiodns/tests/io_fetch_unittest.cc b/src/lib/asiodns/tests/io_fetch_unittest.cc
index 7e9f7a52f5..66dc67ab5a 100644
--- a/src/lib/asiodns/tests/io_fetch_unittest.cc
+++ b/src/lib/asiodns/tests/io_fetch_unittest.cc
@@ -33,7 +33,7 @@
using namespace isc::asiolink;
using namespace isc::dns;
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace boost::asio;
using namespace boost::asio::ip;
@@ -41,8 +41,8 @@ using namespace std;
namespace ph = std::placeholders;
-namespace isc { // @todo - please update
-namespace asiodns { // @todo - please update
+namespace isc {
+namespace asiodns {
const boost::asio::ip::address TEST_HOST(boost::asio::ip::address::from_string("127.0.0.1"));
const uint16_t TEST_PORT(5301);
diff --git a/src/lib/asiodns/tests/run_unittests.cc b/src/lib/asiodns/tests/run_unittests.cc
index 47e343294b..cf3f2040f2 100644
--- a/src/lib/asiodns/tests/run_unittests.cc
+++ b/src/lib/asiodns/tests/run_unittests.cc
@@ -1,19 +1,19 @@
// Copyright (C) 2009-2015 Internet Systems Consortium, Inc. ("ISC")
-// // @todo - please update
+//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
- // @todo - please update
+
#include <config.h>
-#include <gtest/gtest.h> // @todo - please update
- // @todo - please update
+#include <gtest/gtest.h>
+
#include <util/unittests/run_all.h>
#include <log/logger_support.h>
- // @todo - please update
-int // @todo - please update
+
+int
main(int argc, char* argv[]) {
::testing::InitGoogleTest(&argc, argv);
isc::log::initLogger();
return (isc::util::unittests::run_all());
-} // @todo - please update
+}
diff --git a/src/lib/asiolink/dummy_io_cb.h b/src/lib/asiolink/dummy_io_cb.h
index d8a39cae9f..8bf33449aa 100644
--- a/src/lib/asiolink/dummy_io_cb.h
+++ b/src/lib/asiolink/dummy_io_cb.h
@@ -13,7 +13,7 @@
#include <boost/asio/error.hpp>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief Asynchronous I/O Completion Callback
diff --git a/src/lib/asiolink/interval_timer.cc b/src/lib/asiolink/interval_timer.cc
index 58dea7f972..fa0d9e1b67 100644
--- a/src/lib/asiolink/interval_timer.cc
+++ b/src/lib/asiolink/interval_timer.cc
@@ -22,7 +22,7 @@
using namespace std;
namespace ph = std::placeholders;
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// This class holds a call back function of asynchronous operations.
diff --git a/src/lib/asiolink/interval_timer.h b/src/lib/asiolink/interval_timer.h
index 7e733b5520..0b1c10c788 100644
--- a/src/lib/asiolink/interval_timer.h
+++ b/src/lib/asiolink/interval_timer.h
@@ -12,7 +12,7 @@
#include <asiolink/io_service.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
class IntervalTimerImpl;
diff --git a/src/lib/asiolink/io_address.cc b/src/lib/asiolink/io_address.cc
index 749e4dcf45..43459bfe5a 100644
--- a/src/lib/asiolink/io_address.cc
+++ b/src/lib/asiolink/io_address.cc
@@ -25,7 +25,7 @@ using boost::asio::ip::tcp;
using namespace std;
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
size_t
diff --git a/src/lib/asiolink/io_address.h b/src/lib/asiolink/io_address.h
index 3d3f0e30e7..3544ebe125 100644
--- a/src/lib/asiolink/io_address.h
+++ b/src/lib/asiolink/io_address.h
@@ -20,7 +20,7 @@
#include <exceptions/exceptions.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// Defines length of IPv6 address (in binary format).
diff --git a/src/lib/asiolink/io_asio_socket.h b/src/lib/asiolink/io_asio_socket.h
index dbcf004ed4..f44f2c9135 100644
--- a/src/lib/asiolink/io_asio_socket.h
+++ b/src/lib/asiolink/io_asio_socket.h
@@ -32,7 +32,7 @@
#include <boost/asio/coroutine.hpp>
#endif
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief Socket not open
diff --git a/src/lib/asiolink/io_endpoint.cc b/src/lib/asiolink/io_endpoint.cc
index 2ba5861ff9..975372fe27 100644
--- a/src/lib/asiolink/io_endpoint.cc
+++ b/src/lib/asiolink/io_endpoint.cc
@@ -21,7 +21,7 @@
using namespace std;
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
const IOEndpoint*
diff --git a/src/lib/asiolink/io_endpoint.h b/src/lib/asiolink/io_endpoint.h
index 824b482205..0f5ddf701d 100644
--- a/src/lib/asiolink/io_endpoint.h
+++ b/src/lib/asiolink/io_endpoint.h
@@ -23,7 +23,7 @@
#include <sys/socket.h> // for sockaddr
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c IOEndpoint class is an abstract base class to represent
diff --git a/src/lib/asiolink/io_error.h b/src/lib/asiolink/io_error.h
index 15210e61e2..125cdd6b80 100644
--- a/src/lib/asiolink/io_error.h
+++ b/src/lib/asiolink/io_error.h
@@ -10,7 +10,7 @@
#include <exceptions/exceptions.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief An exception that is thrown if an error occurs within the IO
diff --git a/src/lib/asiolink/io_service.cc b/src/lib/asiolink/io_service.cc
index 18d2f2261a..3cc6012fe2 100644
--- a/src/lib/asiolink/io_service.cc
+++ b/src/lib/asiolink/io_service.cc
@@ -14,7 +14,7 @@
#include <boost/shared_ptr.hpp>
#include <sys/socket.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
class IOServiceImpl {
diff --git a/src/lib/asiolink/io_service.h b/src/lib/asiolink/io_service.h
index c238c34e3b..7da1f9e108 100644
--- a/src/lib/asiolink/io_service.h
+++ b/src/lib/asiolink/io_service.h
@@ -22,7 +22,7 @@ namespace asio {
}
}
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
class IOServiceImpl;
diff --git a/src/lib/asiolink/io_socket.cc b/src/lib/asiolink/io_socket.cc
index 7a322303c1..8d399fbc23 100644
--- a/src/lib/asiolink/io_socket.cc
+++ b/src/lib/asiolink/io_socket.cc
@@ -8,7 +8,7 @@
#include <asiolink/asio_wrapper.h>
#include <asiolink/io_socket.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c DummySocket class is a concrete derived class of
diff --git a/src/lib/asiolink/io_socket.h b/src/lib/asiolink/io_socket.h
index ea52254d45..cb07c886ea 100644
--- a/src/lib/asiolink/io_socket.h
+++ b/src/lib/asiolink/io_socket.h
@@ -17,7 +17,7 @@
#include <exceptions/exceptions.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c IOSocket class is an abstract base class to represent
diff --git a/src/lib/asiolink/tcp_endpoint.h b/src/lib/asiolink/tcp_endpoint.h
index 02df01aa03..453e629673 100644
--- a/src/lib/asiolink/tcp_endpoint.h
+++ b/src/lib/asiolink/tcp_endpoint.h
@@ -13,7 +13,7 @@
#include <asiolink/io_endpoint.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c TCPEndpoint class is a concrete derived class of
diff --git a/src/lib/asiolink/tcp_socket.h b/src/lib/asiolink/tcp_socket.h
index 932a32e0d0..e56abe412d 100644
--- a/src/lib/asiolink/tcp_socket.h
+++ b/src/lib/asiolink/tcp_socket.h
@@ -28,7 +28,7 @@
#include <sys/socket.h>
#include <unistd.h> // for some IPC/network system calls
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief Buffer Too Large
diff --git a/src/lib/asiolink/tests/io_address_unittest.cc b/src/lib/asiolink/tests/io_address_unittest.cc
index bdf1d7d15f..4caf30f232 100644
--- a/src/lib/asiolink/tests/io_address_unittest.cc
+++ b/src/lib/asiolink/tests/io_address_unittest.cc
@@ -17,7 +17,7 @@
#include <sstream>
#include <unordered_set>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
TEST(IOAddressHashTest, hashIPv4) {
IOAddress::Hash hash;
diff --git a/src/lib/asiolink/tests/io_endpoint_unittest.cc b/src/lib/asiolink/tests/io_endpoint_unittest.cc
index 3aebccbcfc..314a6a0c38 100644
--- a/src/lib/asiolink/tests/io_endpoint_unittest.cc
+++ b/src/lib/asiolink/tests/io_endpoint_unittest.cc
@@ -21,7 +21,7 @@
#include <netdb.h>
#include <string.h>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
namespace {
typedef boost::shared_ptr<const IOEndpoint> ConstIOEndpointPtr;
diff --git a/src/lib/asiolink/tests/io_socket_unittest.cc b/src/lib/asiolink/tests/io_socket_unittest.cc
index 7e9b3ab805..659a6a6019 100644
--- a/src/lib/asiolink/tests/io_socket_unittest.cc
+++ b/src/lib/asiolink/tests/io_socket_unittest.cc
@@ -11,7 +11,7 @@
#include <gtest/gtest.h>
#include <netinet/in.h>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
TEST(IOSocketTest, dummySockets) {
EXPECT_EQ(static_cast<short>(IPPROTO_UDP),
diff --git a/src/lib/asiolink/tests/tcp_endpoint_unittest.cc b/src/lib/asiolink/tests/tcp_endpoint_unittest.cc
index 599f84b5eb..0d838d4ebd 100644
--- a/src/lib/asiolink/tests/tcp_endpoint_unittest.cc
+++ b/src/lib/asiolink/tests/tcp_endpoint_unittest.cc
@@ -13,7 +13,7 @@
#include <string>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
using namespace std;
// This test checks that the endpoint can manage its own internal
diff --git a/src/lib/asiolink/tests/tcp_socket_unittest.cc b/src/lib/asiolink/tests/tcp_socket_unittest.cc
index c29397ed21..f97a8f6665 100644
--- a/src/lib/asiolink/tests/tcp_socket_unittest.cc
+++ b/src/lib/asiolink/tests/tcp_socket_unittest.cc
@@ -32,7 +32,7 @@
#include <string>
#include <vector>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
using namespace isc::util;
using namespace std;
diff --git a/src/lib/asiolink/tests/udp_endpoint_unittest.cc b/src/lib/asiolink/tests/udp_endpoint_unittest.cc
index 7164e3da56..cf932f1a64 100644
--- a/src/lib/asiolink/tests/udp_endpoint_unittest.cc
+++ b/src/lib/asiolink/tests/udp_endpoint_unittest.cc
@@ -13,7 +13,7 @@
#include <string>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
using namespace std;
// This test checks that the endpoint can manage its own internal
diff --git a/src/lib/asiolink/tests/udp_socket_unittest.cc b/src/lib/asiolink/tests/udp_socket_unittest.cc
index 10622268ed..c607fce92a 100644
--- a/src/lib/asiolink/tests/udp_socket_unittest.cc
+++ b/src/lib/asiolink/tests/udp_socket_unittest.cc
@@ -32,7 +32,7 @@
#include <vector>
-using namespace isc::asiolink; // @todo - please update
+using namespace isc::asiolink;
using namespace isc::util;
using namespace boost::asio;
diff --git a/src/lib/asiolink/udp_endpoint.h b/src/lib/asiolink/udp_endpoint.h
index 69b843344f..f2e040ee03 100644
--- a/src/lib/asiolink/udp_endpoint.h
+++ b/src/lib/asiolink/udp_endpoint.h
@@ -13,7 +13,7 @@
#include <asiolink/io_endpoint.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c UDPEndpoint class is a concrete derived class of
diff --git a/src/lib/asiolink/udp_socket.h b/src/lib/asiolink/udp_socket.h
index 6ceb54e7b7..380d344e36 100644
--- a/src/lib/asiolink/udp_socket.h
+++ b/src/lib/asiolink/udp_socket.h
@@ -24,7 +24,7 @@
#include <exceptions/isc_assert.h>
-namespace isc { // @todo - please update
+namespace isc {
namespace asiolink {
/// \brief The \c UDPSocket class is a concrete derived class of \c IOAsioSocket
diff --git a/src/lib/dns/Makefile.am b/src/lib/dns/Makefile.am
index 78b8c45a4a..eefa489c66 100644
--- a/src/lib/dns/Makefile.am
+++ b/src/lib/dns/Makefile.am
@@ -54,7 +54,7 @@ libkea_dns___la_LIBADD = $(top_builddir)/src/lib/cryptolink/libkea-cryptolink.l
libkea_dns___la_LIBADD += $(top_builddir)/src/lib/util/libkea-util.la
libkea_dns___la_LIBADD += $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
libkea_dns___la_LIBADD += $(CRYPTO_LIBS)
- // @todo - please update
+
# The following files used to be generated, but they are now part of the git tree:
# rrclass.h rrtype.h rrparamregistry.cc rdataclass.h rdataclass.cc
libkea_dns___la_SOURCES += rdataclass.h rrclass.h rrtype.h
diff --git a/src/lib/dns/message.cc b/src/lib/dns/message.cc
index 7cc4e6075b..913240c583 100644
--- a/src/lib/dns/message.cc
+++ b/src/lib/dns/message.cc
@@ -33,7 +33,7 @@
#include <boost/shared_ptr.hpp>
using namespace isc::dns::rdata;
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace std;
using boost::lexical_cast;
diff --git a/src/lib/dns/message.h b/src/lib/dns/message.h
index 44482bc3da..d5c57950d0 100644
--- a/src/lib/dns/message.h
+++ b/src/lib/dns/message.h
@@ -603,7 +603,7 @@ public:
/// NOTE: If the header has already been parsed by a previous call
/// to this method, this method simply returns (i.e., it does not
/// read from the \c buffer).
- void parseHeader(isc::util::InputBuffer& buffer); // @todo - please update
+ void parseHeader(isc::util::InputBuffer& buffer);
/// \brief (Re)build a \c Message object from wire-format data.
///
@@ -668,7 +668,7 @@ private:
/// that ongoing state information will not be lost if the object
/// that originated the asynchronous call falls out of scope.
typedef boost::shared_ptr<Message> MessagePtr;
-typedef boost::shared_ptr<const Message> ConstMessagePtr; // @todo - please update
+typedef boost::shared_ptr<const Message> ConstMessagePtr;
/// Insert the \c Message as a string into stream.
///
diff --git a/src/lib/dns/messagerenderer.cc b/src/lib/dns/messagerenderer.cc
index 772709548b..4e1dfeaa8b 100644
--- a/src/lib/dns/messagerenderer.cc
+++ b/src/lib/dns/messagerenderer.cc
@@ -20,9 +20,9 @@
#include <cassert>
#include <vector>
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using isc::dns::name::internal::maptolower;
- // @todo - please update
+
using namespace std;
namespace isc {
diff --git a/src/lib/dns/name.cc b/src/lib/dns/name.cc
index 813c64d287..ac48205955 100644
--- a/src/lib/dns/name.cc
+++ b/src/lib/dns/name.cc
@@ -19,7 +19,7 @@
#include <iostream>
#include <algorithm>
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace isc::dns::name::internal;
using namespace std;
diff --git a/src/lib/dns/name.h b/src/lib/dns/name.h
index d94db5d8d8..37723e88f7 100644
--- a/src/lib/dns/name.h
+++ b/src/lib/dns/name.h
@@ -18,7 +18,7 @@
#include <dns/exceptions.h>
namespace isc {
-namespace dns { // @todo - please update
+namespace dns {
///
/// \brief A standard DNS module exception that is thrown if the name parser
/// encounters an empty label in the middle of a name.
diff --git a/src/lib/dns/question.cc b/src/lib/dns/question.cc
index 65447ede32..af52842ffa 100644
--- a/src/lib/dns/question.cc
+++ b/src/lib/dns/question.cc
@@ -16,7 +16,7 @@
#include <iostream>
#include <string>
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace std;
diff --git a/src/lib/dns/rdata.h b/src/lib/dns/rdata.h
index 54493532f0..47d7c77923 100644
--- a/src/lib/dns/rdata.h
+++ b/src/lib/dns/rdata.h
@@ -19,7 +19,7 @@
#include <stdint.h>
namespace isc {
-namespace dns { // @todo - please update
+namespace dns {
class AbstractMessageRenderer;
class RRType;
class RRClass;
diff --git a/src/lib/dns/rrclass.cc b/src/lib/dns/rrclass.cc
index 7ae0da9777..f4f5c4975a 100644
--- a/src/lib/dns/rrclass.cc
+++ b/src/lib/dns/rrclass.cc
@@ -16,7 +16,7 @@
#include <string>
using namespace isc::dns;
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace std;
diff --git a/src/lib/dns/rrset.cc b/src/lib/dns/rrset.cc
index d9efdda59f..1360c1255d 100644
--- a/src/lib/dns/rrset.cc
+++ b/src/lib/dns/rrset.cc
@@ -21,7 +21,7 @@
#include <boost/shared_ptr.hpp>
using namespace isc::dns;
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using namespace isc::dns::rdata;
using namespace std;
diff --git a/src/lib/dns/rrttl.cc b/src/lib/dns/rrttl.cc
index 3855c5267d..983e8d0d82 100644
--- a/src/lib/dns/rrttl.cc
+++ b/src/lib/dns/rrttl.cc
@@ -21,7 +21,7 @@
using namespace std;
using namespace isc::dns;
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
namespace {
diff --git a/src/lib/dns/rrtype.cc b/src/lib/dns/rrtype.cc
index aa73e6b57a..d060c415a8 100644
--- a/src/lib/dns/rrtype.cc
+++ b/src/lib/dns/rrtype.cc
@@ -16,7 +16,7 @@
#include <string>
#include <ostream>
-using namespace isc::util; // @todo - please update
+using namespace isc::util;
using isc::dns::RRType;
using namespace std;
diff --git a/src/lib/log/compiler/message.cc b/src/lib/log/compiler/message.cc
index 09b0bb102b..981f7385bb 100644
--- a/src/lib/log/compiler/message.cc
+++ b/src/lib/log/compiler/message.cc
@@ -23,7 +23,7 @@
#include <util/filesystem.h>
#include <util/str.h>
- // @todo - please update
+
#include <log/log_messages.h>
#include <log/message_dictionary.h>
#include <log/message_exception.h>
diff --git a/src/lib/log/logger.cc b/src/lib/log/logger.cc
index 3184dad007..8df3e7f4f8 100644
--- a/src/lib/log/logger.cc
+++ b/src/lib/log/logger.cc
@@ -15,7 +15,7 @@
#include <log/logger_support.h>
#include <log/message_dictionary.h>
#include <log/message_types.h>
- // @todo - please update
+
using namespace std;
namespace isc {
diff --git a/src/lib/log/logger_impl.cc b/src/lib/log/logger_impl.cc
index 5e830ffb81..1718f303c9 100644
--- a/src/lib/log/logger_impl.cc
+++ b/src/lib/log/logger_impl.cc
@@ -37,7 +37,7 @@
#include <log/message_types.h>
#include <log/interprocess/interprocess_sync_file.h>
#include <log/interprocess/interprocess_sync_null.h>
- // @todo - please update
+
// Note: as log4cplus and the Kea logger have many concepts in common, and
// thus many similar names, to disambiguate types we don't "use" the log4cplus
// namespace: instead, all log4cplus types are explicitly qualified.
diff --git a/src/lib/util/Makefile.am b/src/lib/util/Makefile.am
index 66865e7967..de3104ae86 100644
--- a/src/lib/util/Makefile.am
+++ b/src/lib/util/Makefile.am
@@ -1,11 +1,11 @@
AUTOMAKE_OPTIONS = subdir-objects
SUBDIRS = . io unittests tests python
- // @todo - please update
-AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib // @todo - please update
-AM_CPPFLAGS += $(BOOST_INCLUDES) // @todo - please update
+
+AM_CPPFLAGS = -I$(top_srcdir)/src/lib -I$(top_builddir)/src/lib
+AM_CPPFLAGS += $(BOOST_INCLUDES)
AM_CXXFLAGS = $(KEA_CXXFLAGS)
- // @todo - please update
+
lib_LTLIBRARIES = libkea-util.la
libkea_util_la_SOURCES =
libkea_util_la_SOURCES += bigints.h
@@ -41,7 +41,7 @@ libkea_util_la_SOURCES += watch_socket.cc watch_socket.h
libkea_util_la_SOURCES += watched_thread.cc watched_thread.h
libkea_util_la_SOURCES += encode/encode.cc encode/encode.h
libkea_util_la_SOURCES += encode/utf8.cc encode/utf8.h
- // @todo - please update
+
libkea_util_la_LIBADD = $(top_builddir)/src/lib/exceptions/libkea-exceptions.la
libkea_util_la_LDFLAGS = -no-undefined -version-info 83:0:0
diff --git a/src/lib/util/buffer.h b/src/lib/util/buffer.h
index e69da716db..7ae841e0d9 100644
--- a/src/lib/util/buffer.h
+++ b/src/lib/util/buffer.h
@@ -1,36 +1,36 @@
// Copyright (C) 2009-2024 Internet Systems Consortium, Inc. ("ISC")
-// // @todo - please update
+//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
- // @todo - please update
+
#ifndef BUFFER_H
#define BUFFER_H
- // @todo - please update
-#include <exceptions/exceptions.h> // @todo - please update
- // @todo - please update
-#include <boost/shared_ptr.hpp> // @todo - please update
- // @todo - please update
+
+#include <exceptions/exceptions.h>
+
+#include <boost/shared_ptr.hpp>
+
#include <cstring>
#include <stdint.h>
#include <stdlib.h>
#include <vector>
-namespace isc { // @todo - please update
-namespace util { // @todo - please update
- // @todo - please update
+namespace isc {
+namespace util {
+
/// @brief The @c InputBuffer class is a buffer abstraction for
/// manipulating read-only data.
-/// // @todo - please update
+///
/// The main purpose of this class is to provide a safe placeholder
/// for examining wire-format data received from a network.
-/// // @todo - please update
+///
/// 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 socket) and the rest of the Kea DNS library. One
/// common usage of this class for an application would therefore be
/// something like this:
-/// // @todo - please update
+///
/// @code
/// unsigned char buf[1024];
/// struct sockaddr addr;
@@ -39,11 +39,11 @@ namespace util { // @todo - please update
/// InputBuffer buffer(buf, cc);
/// // pass the buffer to a DNS message object to parse the message
/// @endcode
-/// // @todo - please update
+///
/// 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 details.
-/// // @todo - please update
+///
/// An @c InputBuffer object internally holds a reference to the given
/// data, rather than make a local copy of the data. Also, it does
/// not have an ownership of the given data. It is application's
@@ -54,7 +54,7 @@ namespace util { // @todo - please update
/// reference to it, the result is undefined. The application will
/// also be responsible for releasing the data when it's not needed if
/// it was dynamically acquired.
-/// // @todo - please update
+///
/// This is a deliberate design choice: although it's safer to make a
/// local copy of the given data on construction, it would cause
/// unacceptable performance overhead, especially considering that a
@@ -66,7 +66,7 @@ namespace util { // @todo - please update
/// "read-only" stuff as a writable memory region. Since there
/// doesn't seem to be a perfect solution, we have adopted what we
/// thought a "least bad" one.
-/// // @todo - please update
+///
/// Methods for reading data from the buffer generally work like an
/// input stream: it begins with the head of the data, and once some
/// length of data is read from the buffer, the next read operation
@@ -79,10 +79,10 @@ namespace util { // @todo - please update
/// base_ at the initial state, current_ == end_ when the whole buffer
/// was read. Even the difference of two pointers is a std::ptrdiff_t
/// it is safe to cast to a size_t because of the inequality.
-class InputBuffer { // @todo - please update
-public: // @todo - please update
+class InputBuffer {
+public:
/// @brief Constructor.
- /// // @todo - please update
+ ///
/// It is caller's responsibility to ensure that the data is valid
/// as long as the buffer exists.
/// @param data A pointer to the data stored in the buffer.
@@ -91,7 +91,7 @@ public: // @todo - please update
: base_(static_cast<const uint8_t*>(data)), current_(base_),
end_(base_ + len) {
}
- // @todo - please update
+
/// @brief Return the length of the data stored in the buffer.
size_t getLength() const {
return (static_cast<size_t>(end_ - base_));
@@ -101,9 +101,9 @@ public: // @todo - please update
size_t getPosition() const {
return (static_cast<size_t>(current_ - base_));
}
- // @todo - please update
+
/// @brief Set the read position of the buffer to the given value.
- /// // @todo - please update
+ ///
/// The new position must be in the valid range of the buffer;
/// otherwise an exception of class @c isc::OutOfRange will be thrown.
///
@@ -115,8 +115,8 @@ public: // @todo - please update
"InputBuffer::setPosition position is too large");
}
current_ = base_ + position;
- } // @todo - please update
- // @todo - please update
+ }
+
/// @brief Peek an unsigned 8-bit integer from the buffer and return it.
///
/// If the remaining length of the buffer is smaller than 8-bit,
@@ -131,7 +131,7 @@ public: // @todo - please update
}
/// @brief Read an unsigned 8-bit integer from the buffer and return it.
- /// // @todo - please update
+ ///
/// If the remaining length of the buffer is smaller than 8-bit,
/// an exception of class @c isc::OutOfRange will be thrown.
uint8_t readUint8() {
@@ -150,18 +150,18 @@ public: // @todo - please update
if (current_ + sizeof(uint16_t) > end_) {
isc_throw(OutOfRange,
"InputBuffer::peekUint16 read beyond end of buffer");
- } // @todo - please update
- // @todo - please update
+ }
+
uint16_t ret;
ret = (static_cast<uint16_t>(current_[0])) << 8;
ret |= (static_cast<uint16_t>(current_[1]));
return (ret);
- } // @todo - please update
+ }
/// @brief Read an unsigned 16-bit integer in network byte order
/// from the buffer, and return it.
- /// // @todo - please update
+ ///
/// If the remaining length of the buffer is smaller than 16-bit,
/// an exception of class @c isc::OutOfRange will be thrown.
uint16_t readUint16() {
@@ -170,7 +170,7 @@ public: // @todo - please update
return (ret);
}
- // @todo - please update
+
/// @brief Read an unsigned 32-bit integer in network byte order
/// from the buffer, and return it.
///
@@ -180,20 +180,20 @@ public: // @todo - please update
if (current_ + sizeof(uint32_t) > end_) {
isc_throw(OutOfRange,
"InputBuffer::peekUint32 read beyond end of buffer");
- } // @todo - please update
- // @todo - please update
+ }
+
uint32_t ret;
ret = (static_cast<uint32_t>(current_[0])) << 24;
ret |= (static_cast<uint32_t>(current_[1])) << 16;
ret |= (static_cast<uint32_t>(current_[2])) << 8;
ret |= (static_cast<uint32_t>(current_[3]));
- // @todo - please update
+
return (ret);
- } // @todo - please update
+ }
/// @brief Read an unsigned 32-bit integer in network byte order
/// from the buffer, and return it.
- /// // @todo - please update
+ ///
/// If the remaining length of the buffer is smaller than 32-bit,
/// an exception of class @c isc::OutOfRange will be thrown.
uint32_t readUint32() {
@@ -202,7 +202,7 @@ public: // @todo - please update
return (ret);
}
- // @todo - please update
+
/// @brief Peek data of the specified length from the buffer and
/// copy it to the caller supplied buffer.
///
@@ -214,14 +214,14 @@ public: // @todo - please update
if (current_ + len > end_) {
isc_throw(OutOfRange,
"InputBuffer::peekData read beyond end of buffer");
- } // @todo - please update
- // @todo - please update
+ }
+
static_cast<void>(std::memmove(data, current_, len));
- } // @todo - please update
+ }
/// @brief Read data of the specified length from the buffer and
/// copy it to the caller supplied buffer.
- /// // @todo - please update
+ ///
/// The data is copied as stored in the buffer; no conversion is
/// performed. If the remaining length of the buffer is smaller
/// than the specified length, an exception of class @c isc::OutOfRange
@@ -244,12 +244,12 @@ public: // @todo - please update
if (current_ + len > end_) {
isc_throw(OutOfRange,
"InputBuffer::peekVector read beyond end of buffer");
- } // @todo - please update
- // @todo - please update
+ }
+
data.resize(len);
peekData(&data[0], len);
- } // @todo - please update
- // @todo - please update
+ }
+
/// @brief Read specified number of bytes as a vector.
///
/// If specified buffer is too short, it will be expanded using
@@ -264,32 +264,32 @@ public: // @todo - please update
current_ += len;
}
-private: // @todo - please update
+private:
/// @brief Base of the buffer.
const uint8_t* base_;
/// @brief Current poisition in the buffer.
const uint8_t* current_;
- // @todo - please update
+
/// @brief End of the buffer (address of the byte after).
const uint8_t* end_;
-}; // @todo - please update
- // @todo - please update
+};
+
/// @brief Type of pointers to input buffer.
typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// @brief The @c OutputBuffer class is a buffer abstraction for
/// manipulating mutable data.
-/// // @todo - please update
-/// The main purpose of this class is to provide a safe workplace for // @todo - please update
-/// constructing wire-format data to be sent out to a network. Here, // @todo - please update
+///
+/// The main purpose of this class is to provide a safe workplace for
+/// constructing wire-format data to be sent out to a network. Here,
/// <em>safe</em> means that it automatically allocates necessary
/// memory and avoid buffer overrun.
-/// // @todo - please update
+///
/// Like for the @c InputBuffer class, applications normally use this
/// class only in a limited situation. One common usage of this class
/// for an application would be something like this:
-/// // @todo - please update
+///
/// @code
/// OutputBuffer buffer(4096); // give a sufficiently large initial size
/// // pass the buffer to a DNS message object to construct a wire-format
@@ -297,7 +297,7 @@ typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// struct sockaddr to;
/// sendto(s, buffer.getDataAsVoidPtr(), buffer.getLength(), 0, &to, sizeof(to));
/// @endcode
-/// // @todo - please update
+///
/// where the @c getData() (in fact @c getDataAsVoidPtr()) method gives
/// a reference to the internal memory region stored in the @c buffer
/// object. This is a suboptimal design in that it exposes an
@@ -309,7 +309,7 @@ typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// such a special circumstance. It should also be noted that the
/// memory region returned by @c getData() may be invalidated after a
/// subsequent write operation.
-/// // @todo - please update
+///
/// An @c OutputBuffer class object automatically extends its memory
/// region when data is written beyond the end of the current buffer.
/// However, it will involve performance overhead such as reallocating
@@ -318,7 +318,7 @@ typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// size. The @c getCapacity() method provides the current maximum
/// size of data (including the portion already written) that can be
/// written into the buffer without causing memory reallocation.
-/// // @todo - please update
+///
/// Methods for writing data into the buffer generally work like an
/// output stream: it begins with the head of the buffer, and once
/// some length of data is written into the buffer, the next write
@@ -330,7 +330,7 @@ typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// writing multi-GB data, a separate exception (e.g., @c
/// std::bad_alloc) may be thrown by the system. This also applies to
/// the constructor with a very large initial size.
-/// // @todo - please update
+///
/// Note to developers: it may make more sense to introduce an
/// abstract base class for the @c OutputBuffer and define the simple
/// implementation as a concrete derived class. That way we can
@@ -338,16 +338,16 @@ typedef boost::shared_ptr<InputBuffer> InputBufferPtr;
/// buffer implementation or allowing users to have their own
/// customized version without modifying the source code. We in fact
/// considered that option, but at the moment chose the simpler
-/// approach with a single concrete class because it may make the // @todo - please update
+/// approach with a single concrete class because it may make the
/// implementation unnecessarily complicated while we were still not
/// certain if we really want that flexibility. We may revisit the
/// class design as we see more applications of the class. The same
/// considerations apply to the @c InputBuffer and @c MessageRenderer
/// classes.
-class OutputBuffer { // @todo - please update
-public: // @todo - please update
+class OutputBuffer {
+public:
/// @brief Constructor.
- /// // @todo - please update
+ ///
/// @param len The initial allocated length of the buffer in bytes.
OutputBuffer(size_t len) : buffer_() {
if (len != 0) {
@@ -367,7 +367,7 @@ public: // @todo - please update
/// @brief Destructor.
~OutputBuffer() = default;
- // @todo - please update
+
/// @brief Assignment operator.
///
/// @param other Object to copy into "this".
@@ -389,10 +389,10 @@ public: // @todo - please update
}
/// @brief Return a pointer to the head of the data stored in the buffer.
- /// // @todo - please update
+ ///
/// The caller can assume that the subsequent @c getLength() bytes
/// are identical to the stored data of the buffer.
- /// // @todo - please update
+ ///
/// Note: The pointer returned by this method may be invalidated
/// after a subsequent write operation.
const uint8_t* getData() const {
@@ -414,11 +414,11 @@ public: // @todo - please update
}
/// @brief Return the value of the buffer at the specified position.
- /// // @todo - please update
+ ///
/// @c pos must specify the valid position of the buffer;
/// otherwise an exception class of @c isc::OutOfRange will
/// be thrown.
- /// // @todo - please update
+ ///
/// @param pos The position in the buffer to be returned.
uint8_t operator[](size_t pos) const {
if (pos >= buffer_.size()) {
@@ -427,7 +427,7 @@ public: // @todo - please update
<< ") >= size (" << buffer_.size() << ")");
}
return (buffer_[pos]);
- } // @todo - please update
+ }
/// @brief Return the buffer.
///
@@ -435,9 +435,9 @@ public: // @todo - please update
const std::vector<uint8_t>& getVector() const {
return (buffer_);
}
- // @todo - please update
+
/// @brief Insert a specified length of gap at the end of the buffer.
- /// // @todo - please update
+ ///
/// The caller should not assume any particular value to be
/// inserted. This method is provided as a shortcut to make a
/// hole in the buffer that is to be filled in later, e.g, by
@@ -447,21 +447,21 @@ public: // @todo - please update
void skip(size_t len) {
buffer_.resize(buffer_.size() + len);
}
- // @todo - please update
+
/// @brief Trim the specified length of data from the end of the buffer.
- /// // @todo - please update
+ ///
/// The specified length must not exceed the current data size of
/// the buffer; otherwise an exception of class @c isc::OutOfRange
/// will be thrown.
- /// // @todo - please update
+ ///
/// @param len The length of data that should be trimmed.
void trim(size_t len) {
if (len > buffer_.size()) {
isc_throw(OutOfRange,
"OutputBuffer::trim length too large from output buffer");
- } // @todo - please update
+ }
buffer_.resize(buffer_.size() - len);
- } // @todo - please update
+ }
/// @brief Clear buffer content.
void clear() {
@@ -469,68 +469,68 @@ public: // @todo - please update
}
/// @brief Write an unsigned 8-bit integer into the buffer.
- /// // @todo - please update
+ ///
/// @param data The 8-bit integer to be written into the buffer.
void writeUint8(uint8_t data) {
buffer_.push_back(data);
}
- // @todo - please update
+
/// @brief Write an unsigned 8-bit integer into the buffer.
- /// // @todo - please update
- /// The position must be lower than the size of the buffer, // @todo - please update
+ ///
+ /// The position must be lower than the size of the buffer,
/// otherwise an exception of class @c isc::OutOfRange will
/// be thrown.
- /// // @todo - please update
+ ///
/// @param data The 8-bit integer to be written into the buffer.
/// @param pos The position in the buffer to write the data.
- void writeUint8At(uint8_t data, size_t pos) { // @todo - please update
+ void writeUint8At(uint8_t data, size_t pos) {
if (pos + sizeof(data) > buffer_.size()) {
isc_throw(OutOfRange,
"OutputBuffer::writeUint8At write at invalid position");
- } // @todo - please update
+ }
buffer_[pos] = data;
- } // @todo - please update
- // @todo - please update
+ }
+
/// @brief Write an unsigned 16-bit integer in host byte order
/// into the buffer in network byte order.
- /// // @todo - please update
+ ///
/// @param data The 16-bit integer to be written into the buffer.
void writeUint16(uint16_t data) {
buffer_.push_back(static_cast<uint8_t>((data & 0xff00U) >> 8));
buffer_.push_back(static_cast<uint8_t>(data & 0x00ffU));
- } // @todo - please update
+ }
/// @brief Write an unsigned 16-bit integer in host byte order at
/// the specified position of the buffer in network byte order.
- /// // @todo - please update
+ ///
/// The buffer must have a sufficient room to store the given data
/// at the given position, that is, <code>pos + 2 <
/// getLength()</code>; otherwise an exception of class
/// @c isc::OutOfRange will be thrown.
- /// Note also that this method never extends the buffer. // @todo - please update
- /// // @todo - please update
+ /// Note also that this method never extends the buffer.
+ ///
/// @param data The 16-bit integer to be written into the buffer.
/// @param pos The beginning position in the buffer to write the data.
void writeUint16At(uint16_t data, size_t pos) {
if (pos + sizeof(data) > buffer_.size()) {
isc_throw(OutOfRange,
"OutputBuffer::writeUint16At write at invalid position");
- } // @todo - please update
- // @todo - please update
+ }
+
buffer_[pos] = static_cast<uint8_t>((data & 0xff00U) >> 8);
buffer_[pos + 1] = static_cast<uint8_t>(data & 0x00ffU);
- } // @todo - please update
+ }
/// @brief Write an unsigned 32-bit integer in host byte order
- /// into the buffer in network byte order. // @todo - please update
- /// // @todo - please update
+ /// into the buffer in network byte order.
+ ///
/// @param data The 32-bit integer to be written into the buffer.
void writeUint32(uint32_t data) {
buffer_.push_back(static_cast<uint8_t>((data & 0xff000000) >> 24));
buffer_.push_back(static_cast<uint8_t>((data & 0x00ff0000) >> 16));
buffer_.push_back(static_cast<uint8_t>((data & 0x0000ff00) >> 8));
buffer_.push_back(static_cast<uint8_t>(data & 0x000000ff));
- } // @todo - please update
+ }
/// @brief Write an unsigned 64-bit integer in host byte order
/// into the buffer in network byte order.
@@ -548,9 +548,9 @@ public: // @todo - please update
}
/// @brief Copy an arbitrary length of data into the buffer.
- /// // @todo - please update
- /// No conversion on the copied data is performed. // @todo - please update
- /// // @todo - please update
+ ///
+ /// No conversion on the copied data is performed.
+ ///
/// @param data A pointer to the data to be copied into the buffer.
/// @param len The length of the data in bytes.
void writeData(const void *data, size_t len) {
@@ -560,17 +560,17 @@ public: // @todo - please update
const uint8_t* ptr = static_cast<const uint8_t*>(data);
buffer_.insert(buffer_.end(), ptr, ptr + len);
- } // @todo - please update
+ }
-private: // @todo - please update
+private:
/// The actual data.
std::vector<uint8_t> buffer_;
-}; // @todo - please update
- // @todo - please update
+};
+
/// @brief Type of pointers to output buffers.
-typedef boost::shared_ptr<OutputBuffer> OutputBufferPtr; // @todo - please update
- // @todo - please update
+typedef boost::shared_ptr<OutputBuffer> OutputBufferPtr;
+
} // end of namespace util
} // end of namespace isc
- // @todo - please update
+
#endif // BUFFER_H
diff --git a/src/lib/util/io/fd_share.cc b/src/lib/util/io/fd_share.cc
index 65954565e2..7ab265953a 100644
--- a/src/lib/util/io/fd_share.cc
+++ b/src/lib/util/io/fd_share.cc
@@ -1,26 +1,26 @@
// Copyright (C) 2010-2019 Internet Systems Consortium, Inc. ("ISC")
-// // @todo - please update
+//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
- // @todo - please update
+
#include <config.h>
#include <cstring>
#include <cstdlib>
-#include <sys/types.h> // @todo - please update
-#include <sys/socket.h> // @todo - please update
-#include <sys/uio.h> // @todo - please update
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <sys/uio.h>
#include <errno.h>
#include <stdlib.h> // for malloc and free
#include <unistd.h>
#include <util/io/fd_share.h>
- // @todo - please update
-namespace isc { // @todo - please update
+
+namespace isc {
namespace util {
namespace io {
- // @todo - please update
+
namespace {
// Not all OSes support advanced CMSG macros: CMSG_LEN and CMSG_SPACE.
// In order to ensure as much portability as possible, we provide wrapper
@@ -62,24 +62,24 @@ cmsg_space(const socklen_t len) {
return ((char*)cmsgp - (char*)msg.msg_control);
} else {
return (0);
- } // @todo - please update
+ }
#endif // CMSG_SPACE
}
}
- // @todo - please update
-int // @todo - please update
+
+int
recv_fd(const int sock) {
- struct msghdr msghdr; // @todo - please update
+ struct msghdr msghdr;
struct iovec iov_dummy;
unsigned char dummy_data;
- // @todo - please update
+
iov_dummy.iov_base = &dummy_data;
iov_dummy.iov_len = sizeof(dummy_data);
- msghdr.msg_name = NULL; // @todo - please update
- msghdr.msg_namelen = 0; // @todo - please update
+ msghdr.msg_name = NULL;
+ msghdr.msg_namelen = 0;
msghdr.msg_iov = &iov_dummy;
- msghdr.msg_iovlen = 1; // @todo - please update
- msghdr.msg_flags = 0; // @todo - please update
+ msghdr.msg_iovlen = 1;
+ msghdr.msg_flags = 0;
msghdr.msg_controllen = cmsg_space(sizeof(int));
msghdr.msg_control = malloc(msghdr.msg_controllen);
if (msghdr.msg_control == NULL) {
@@ -128,39 +128,39 @@ recv_fd(const int sock) {
return (FD_SYSTEM_ERROR);
}
return (new_fd);
-} // @todo - please update
- // @todo - please update
-int // @todo - please update
+}
+
+int
send_fd(const int sock, const int fd) {
- struct msghdr msghdr; // @todo - please update
+ struct msghdr msghdr;
struct iovec iov_dummy;
unsigned char dummy_data = 0;
- // @todo - please update
+
iov_dummy.iov_base = &dummy_data;
iov_dummy.iov_len = sizeof(dummy_data);
- msghdr.msg_name = NULL; // @todo - please update
- msghdr.msg_namelen = 0; // @todo - please update
+ msghdr.msg_name = NULL;
+ msghdr.msg_namelen = 0;
msghdr.msg_iov = &iov_dummy;
- msghdr.msg_iovlen = 1; // @todo - please update
- msghdr.msg_flags = 0; // @todo - please update
+ msghdr.msg_iovlen = 1;
+ msghdr.msg_flags = 0;
msghdr.msg_controllen = cmsg_space(sizeof(int));
msghdr.msg_control = malloc(msghdr.msg_controllen);
if (msghdr.msg_control == NULL) {
return (FD_OTHER_ERROR);
}
std::memset(msghdr.msg_control, 0, msghdr.msg_controllen);
- // @todo - please update
+
struct cmsghdr* cmsg = CMSG_FIRSTHDR(&msghdr);
cmsg->cmsg_len = cmsg_len(sizeof(int));
cmsg->cmsg_level = SOL_SOCKET;
cmsg->cmsg_type = SCM_RIGHTS;
std::memcpy(CMSG_DATA(cmsg), &fd, sizeof(int));
- // @todo - please update
+
const int ret = sendmsg(sock, &msghdr, 0);
free(msghdr.msg_control);
return (ret >= 0 ? 0 : FD_SYSTEM_ERROR);
-} // @todo - please update
- // @todo - please update
+}
+
} // namespace io
} // namespace util
} // namespace isc
diff --git a/src/lib/util/io/fd_share.h b/src/lib/util/io/fd_share.h
index 16e5421536..600606f820 100644
--- a/src/lib/util/io/fd_share.h
+++ b/src/lib/util/io/fd_share.h
@@ -1,22 +1,22 @@
// Copyright (C) 2011-2015 Internet Systems Consortium, Inc. ("ISC")
-// // @todo - please update
+//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
- // @todo - please update
+
#ifndef FD_SHARE_H
#define FD_SHARE_H
- // @todo - please update
+
/**
* \file fd_share.h
* \short Support to transfer file descriptors between processes.
* \todo This interface is very C-ish. Should we have some kind of exceptions?
*/
-namespace isc { // @todo - please update
+namespace isc {
namespace util {
namespace io {
- // @todo - please update
+
const int FD_SYSTEM_ERROR = -2;
const int FD_OTHER_ERROR = -1;
@@ -34,7 +34,7 @@ const int FD_OTHER_ERROR = -1;
* not work with a pipe.
*/
int recv_fd(const int sock);
- // @todo - please update
+
/**
* \short Sends a file descriptor.
* This sends a file descriptor over an unix domain socket. This is the
@@ -49,9 +49,9 @@ int recv_fd(const int sock);
* file descriptor.
*/
int send_fd(const int sock, const int fd);
- // @todo - please update
+
} // namespace io
} // namespace util
} // namespace isc
- // @todo - please update
+
#endif // FD_SHARE_H
diff --git a/src/lib/util/tests/buffer_unittest.cc b/src/lib/util/tests/buffer_unittest.cc
index 9ec4888e29..66c43e8f21 100644
--- a/src/lib/util/tests/buffer_unittest.cc
+++ b/src/lib/util/tests/buffer_unittest.cc
@@ -1,47 +1,47 @@
// Copyright (C) 2009-2024 Internet Systems Consortium, Inc. ("ISC")
-// // @todo - please update
+//
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
// file, You can obtain one at http://mozilla.org/MPL/2.0/.
- // @todo - please update
+
#include <config.h>
-#include <exceptions/exceptions.h> // @todo - please update
+#include <exceptions/exceptions.h>
#include <util/buffer.h>
- // @todo - please update
+
#ifdef EXPECT_DEATH
#include <util/unittests/resource.h>
#include <util/unittests/check_valgrind.h>
#endif /* EXPECT_DEATH */
- // @todo - please update
+
#include <gtest/gtest.h>
- // @todo - please update
-using namespace isc; // @todo - please update
+
+using namespace isc;
using namespace isc::util;
- // @todo - please update
-namespace { // @todo - please update
- // @todo - please update
-class BufferTest : public ::testing::Test { // @todo - please update
-protected: // @todo - please update
- BufferTest() : ibuffer(testdata, sizeof(testdata)), obuffer(0), // @todo - please update
+
+namespace {
+
+class BufferTest : public ::testing::Test {
+protected:
+ BufferTest() : ibuffer(testdata, sizeof(testdata)), obuffer(0),
expected_size(0) {
- data16 = (2 << 8) | 3; // @todo - please update
- data32 = (4 << 24) | (5 << 16) | (6 << 8) | 7; // @todo - please update
- memset(vdata, 0, sizeof(testdata)); // @todo - please update
- } // @todo - please update
- // @todo - please update
- InputBuffer ibuffer; // @todo - please update
- OutputBuffer obuffer; // @todo - please update
- static const uint8_t testdata[5]; // @todo - please update
- uint8_t vdata[sizeof(testdata)]; // @todo - please update
- size_t expected_size; // @todo - please update
- uint16_t data16; // @todo - please update
- uint32_t data32; // @todo - please update
+ data16 = (2 << 8) | 3;
+ data32 = (4 << 24) | (5 << 16) | (6 << 8) | 7;
+ memset(vdata, 0, sizeof(testdata));
+ }
+
+ InputBuffer ibuffer;
+ OutputBuffer obuffer;
+ static const uint8_t testdata[5];
+ uint8_t vdata[sizeof(testdata)];
+ size_t expected_size;
+ uint16_t data16;
+ uint32_t data32;
std::vector<uint8_t> datav;
-}; // @todo - please update
- // @todo - please update
-const uint8_t BufferTest::testdata[5] = {1, 2, 3, 4, 5}; // @todo - please update
- // @todo - please update
+};
+
+const uint8_t BufferTest::testdata[5] = {1, 2, 3, 4, 5};
+
TEST_F(BufferTest, outputBufferClear) {
obuffer.writeData(testdata, sizeof(testdata));
obuffer.clear();
@@ -160,7 +160,7 @@ TEST_F(BufferTest, outputBufferTrim) {
ASSERT_THROW(obuffer.trim(3), OutOfRange);
}
-TEST_F(BufferTest, inputBufferRead) { // @todo - please update
+TEST_F(BufferTest, inputBufferRead) {
ASSERT_EQ(5, ibuffer.getLength());
ASSERT_EQ(1, ibuffer.peekUint8());
ASSERT_EQ(0, ibuffer.getPosition());
@@ -171,19 +171,19 @@ TEST_F(BufferTest, inputBufferRead) { // @todo - please update
ASSERT_EQ(data16, ibuffer.readUint16());
ASSERT_EQ((2 << 8) | 3, data16);
ASSERT_EQ(3, ibuffer.getPosition());
- ibuffer.setPosition(1); // @todo - please update
+ ibuffer.setPosition(1);
ASSERT_EQ(1, ibuffer.getPosition());
data32 = ibuffer.peekUint32();
ASSERT_EQ(1, ibuffer.getPosition());
ASSERT_EQ(data32, ibuffer.readUint32());
ASSERT_EQ((2 << 24) | (3 << 16) | (4 << 8) | 5, data32);
- ibuffer.setPosition(0); // @todo - please update
- memset(vdata, 0, sizeof(vdata)); // @todo - please update
+ ibuffer.setPosition(0);
+ memset(vdata, 0, sizeof(vdata));
ibuffer.peekData(vdata, sizeof(vdata));
ASSERT_EQ(0, memcmp(vdata, testdata, sizeof(testdata)));
ASSERT_EQ(0, ibuffer.getPosition());
memset(vdata, 0, sizeof(vdata));
- ibuffer.readData(vdata, sizeof(vdata)); // @todo - please update
+ ibuffer.readData(vdata, sizeof(vdata));
ASSERT_EQ(0, memcmp(vdata, testdata, sizeof(testdata)));
ASSERT_EQ(sizeof(vdata), ibuffer.getPosition());
ibuffer.setPosition(0);
@@ -197,16 +197,16 @@ TEST_F(BufferTest, inputBufferRead) { // @todo - please update
ASSERT_EQ(sizeof(vdata), datav.size());
ASSERT_EQ(0, memcmp(&vdata[0], testdata, sizeof(testdata)));
ASSERT_EQ(sizeof(vdata), ibuffer.getPosition());
-} // @todo - please update
- // @todo - please update
+}
+
TEST_F(BufferTest, outputBufferReadAt) {
obuffer.writeData(testdata, sizeof(testdata));
for (size_t i = 0; i < sizeof(testdata); ++i) {
ASSERT_EQ(testdata[i], obuffer[i]);
}
ASSERT_THROW(obuffer[sizeof(testdata)], isc::OutOfRange);
-} // @todo - please update
- // @todo - please update
+}
+
TEST_F(BufferTest, inputBufferReadVectorChunks) {
std::vector<uint8_t> vec;
@@ -217,33 +217,33 @@ TEST_F(BufferTest, inputBufferReadVectorChunks) {
ASSERT_NO_THROW(ibuffer.readVector(vec, 2));
ASSERT_EQ(2, vec.size());
ASSERT_EQ(0, memcmp(&vec[0], &testdata[3], 2));
-} // @todo - please update
- // @todo - please update
-TEST_F(BufferTest, outputBufferWrite) { // @todo - please update
- obuffer.writeUint8(1); // @todo - please update
- expected_size += sizeof(uint8_t); // @todo - please update
+}
+
+TEST_F(BufferTest, outputBufferWrite) {
+ obuffer.writeUint8(1);
+ expected_size += sizeof(uint8_t);
ASSERT_EQ(expected_size, obuffer.getLength());
const uint8_t* cp = obuffer.getData();
ASSERT_EQ(1, *cp);
- // @todo - please update
- obuffer.writeUint16(data16); // @todo - please update
- expected_size += sizeof(data16); // @todo - please update
+
+ obuffer.writeUint16(data16);
+ expected_size += sizeof(data16);
cp = obuffer.getData();
ASSERT_EQ(expected_size, obuffer.getLength());
ASSERT_EQ(2, *(cp + 1));
ASSERT_EQ(3, *(cp + 2));
- // @todo - please update
- obuffer.writeUint32(data32); // @todo - please update
- expected_size += sizeof(data32); // @todo - please update
+
+ obuffer.writeUint32(data32);
+ expected_size += sizeof(data32);
cp = obuffer.getData();
ASSERT_EQ(expected_size, obuffer.getLength());
ASSERT_EQ(4, *(cp + 3));
ASSERT_EQ(5, *(cp + 4));
ASSERT_EQ(6, *(cp + 5));
ASSERT_EQ(7, *(cp + 6));
- // @todo - please update
- obuffer.writeData(testdata, sizeof(testdata)); // @todo - please update
- expected_size += sizeof(testdata); // @todo - please update
+
+ obuffer.writeData(testdata, sizeof(testdata));
+ expected_size += sizeof(testdata);
ASSERT_EQ(expected_size, obuffer.getLength());
cp = obuffer.getData();
ASSERT_EQ(0, memcmp(cp + 7, testdata, sizeof(testdata)));
@@ -254,27 +254,27 @@ TEST_F(BufferTest, outputBufferWrite) { // @todo - please update
expected.insert(expected.end(), testdata, testdata + sizeof(testdata));
ASSERT_EQ(expected_size, expected.size());
ASSERT_EQ(0, memcmp(&expected[0], &datav[0], expected_size));
-} // @todo - please update
- // @todo - please update
+}
+
TEST_F(BufferTest, outputBufferWriteAt) {
- obuffer.writeUint32(data32); // @todo - please update
- expected_size += sizeof(data32); // @todo - please update
- // @todo - please update
- // overwrite 2nd byte // @todo - please update
- obuffer.writeUint8At(4, 1); // @todo - please update
+ obuffer.writeUint32(data32);
+ expected_size += sizeof(data32);
+
+ // overwrite 2nd byte
+ obuffer.writeUint8At(4, 1);
ASSERT_EQ(expected_size, obuffer.getLength()); // length shouldn't change
const uint8_t* cp = obuffer.getData();
ASSERT_EQ(4, *(cp + 1));
- // @todo - please update
- // overwrite 2nd and 3rd bytes // @todo - please update
- obuffer.writeUint16At(data16, 1); // @todo - please update
+
+ // overwrite 2nd and 3rd bytes
+ obuffer.writeUint16At(data16, 1);
ASSERT_EQ(expected_size, obuffer.getLength()); // length shouldn't change
cp = obuffer.getData();
ASSERT_EQ(2, *(cp + 1));
ASSERT_EQ(3, *(cp + 2));
- // @todo - please update
- // overwrite 3rd and 4th bytes // @todo - please update
- obuffer.writeUint16At(data16, 2); // @todo - please update
+
+ // overwrite 3rd and 4th bytes
+ obuffer.writeUint16At(data16, 2);
ASSERT_EQ(expected_size, obuffer.getLength());
cp = obuffer.getData();
ASSERT_EQ(2, *(cp + 2));
@@ -308,4 +308,4 @@ TEST_F(BufferTest, writeUint64) {
ASSERT_FALSE(memcmp(exp_val2, obuffer.getData(), sizeof(uint64_t)));
}
-} // @todo - please update
+}