BIND 10 trac2404, updated. 8f6903dc068a22c2966e9c28c90c14b6d83543cc [2404] Updated comments etc.
BIND 10 source code commits
bind10-changes at lists.isc.org
Tue Dec 4 11:32:38 UTC 2012
The branch, trac2404 has been updated
via 8f6903dc068a22c2966e9c28c90c14b6d83543cc (commit)
from b6c480a59485c8a53d9beea2dba85a667aef7556 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 8f6903dc068a22c2966e9c28c90c14b6d83543cc
Author: Stephen Morris <stephen at isc.org>
Date: Tue Dec 4 11:32:08 2012 +0000
[2404] Updated comments etc.
-----------------------------------------------------------------------
Summary of changes:
src/lib/dhcp/duid.h | 33 ++++++++-------
src/lib/dhcpsrv/lease_mgr.h | 6 +--
src/lib/dhcpsrv/mysql_lease_mgr.cc | 18 +++-----
src/lib/dhcpsrv/tests/lease_mgr_unittest.cc | 60 +++++++++++++--------------
4 files changed, 57 insertions(+), 60 deletions(-)
-----------------------------------------------------------------------
diff --git a/src/lib/dhcp/duid.h b/src/lib/dhcp/duid.h
index 84ada81..fe642f4 100644
--- a/src/lib/dhcp/duid.h
+++ b/src/lib/dhcp/duid.h
@@ -45,13 +45,13 @@ class DUID {
DUID_MAX ///< not a real type, just maximum defined value + 1
} DUIDType;
- /// @brief creates a DUID
+ /// @brief Constructor from vector
DUID(const std::vector<uint8_t>& duid);
- /// @brief creates a DUID
+ /// @brief Constructor from array and array size
DUID(const uint8_t* duid, size_t len);
- /// @brief returns a const reference to the actual DUID value
+ /// @brief Returns a const reference to the actual DUID value
///
/// Note: For safety reasons, this method returns a copy of data as
/// otherwise the reference would be only valid as long as the object that
@@ -60,47 +60,52 @@ class DUID {
/// (e.g. storeSelf()) that will avoid data copying.
const std::vector<uint8_t> getDuid() const;
- /// @brief returns DUID type
+ /// @brief Returns the DUID type
DUIDType getType() const;
- /// returns textual prepresentation (e.g. 00:01:02:03:ff)
+ /// @brief Returns textual representation of a DUID (e.g. 00:01:02:03:ff)
std::string toText() const;
- /// compares two DUIDs
+ /// @brief Compares two DUIDs for equality
bool operator==(const DUID& other) const;
- /// compares two DUIDs
+ /// @brief Compares two DUIDs for inequality
bool operator!=(const DUID& other) const;
protected:
- /// the actual content of the DUID
+ /// The actual content of the DUID
std::vector<uint8_t> duid_;
};
+/// @brief Shared pointer to a DUID
typedef boost::shared_ptr<DUID> DuidPtr;
+
+
/// @brief Holds Client identifier or client IPv4 address
///
/// This class is intended to be a generic IPv4 client identifier. It can hold
/// a client-id
class ClientId : DUID {
public:
+ /// @brief Maximum size of a client ID
+ ///
+ /// This is the same as the maximum size of the underlying DUID.
static const size_t MAX_CLIENT_ID_LEN = DUID::MAX_DUID_LEN;
- /// constructor based on vector<uint8_t>
+ /// @brief Constructor based on vector<uint8_t>
ClientId(const std::vector<uint8_t>& clientid);
- /// constructor based on C-style data
+ /// @brief Constructor based on array and array size
ClientId(const uint8_t* clientid, size_t len);
- /// @brief returns reference to the client-id data
- ///
+ /// @brief Returns reference to the client-id data
const std::vector<uint8_t> getClientId() const;
- // compares two client-ids
+ /// @brief Compares two client-ids for equality
bool operator==(const ClientId& other) const;
- // compares two client-ids
+ /// @brief Compares two client-ids for inequality
bool operator!=(const ClientId& other) const;
};
diff --git a/src/lib/dhcpsrv/lease_mgr.h b/src/lib/dhcpsrv/lease_mgr.h
index f81f4c3..a264743 100644
--- a/src/lib/dhcpsrv/lease_mgr.h
+++ b/src/lib/dhcpsrv/lease_mgr.h
@@ -115,8 +115,8 @@ public:
/// would be required. As this is a critical part of the code that will be used
/// extensively, direct access is warranted.
struct Lease4 {
- // The following constants definine the size of fields in the database
- static const size_t HWADDR_MAX = 20; // Maximum size of hardware address
+ /// @brief Maximum size of a hardware address
+ static const size_t HWADDR_MAX = 20;
/// @brief Constructor
///
@@ -392,7 +392,7 @@ struct Lease6 {
/// @brief Pointer to a Lease6 structure.
typedef boost::shared_ptr<Lease6> Lease6Ptr;
-/// @brief Const pointer to a Lease6 structure.
+/// @brief Pointer to a const Lease6 structure.
typedef boost::shared_ptr<const Lease6> ConstLease6Ptr;
/// @brief A collection of IPv6 leases.
diff --git a/src/lib/dhcpsrv/mysql_lease_mgr.cc b/src/lib/dhcpsrv/mysql_lease_mgr.cc
index 79fefad..428a137 100644
--- a/src/lib/dhcpsrv/mysql_lease_mgr.cc
+++ b/src/lib/dhcpsrv/mysql_lease_mgr.cc
@@ -15,6 +15,7 @@
#include <config.h>
#include <asiolink/io_address.h>
+#include <dhcp/duid.h>
#include <dhcpsrv/mysql_lease_mgr.h>
#include <boost/static_assert.hpp>
@@ -91,18 +92,9 @@ namespace {
/// colon separators.
const size_t ADDRESS6_TEXT_MAX_LEN = 39;
-/// @brief Maximum size of a DUID.
-const size_t DUID_MAX_LEN = 128;
-
/// @brief Maximum size of a hardware address.
const size_t HWADDR_MAX_LEN = 20;
-/// @brief Maximum size of a client identification.
-///
-/// Note that the value is arbitrarily chosen: RFC 2131 does not specify an
-/// upper limit, but this seems long enough.
-const size_t CLIENT_ID_MAX_LEN = 128;
-
/// @brief Number of columns in Lease4 table
const size_t LEASE4_COLUMNS = 6;
@@ -156,7 +148,6 @@ TaggedStatement tagged_statements[] = {
"valid_lifetime, expire, subnet_id "
"FROM lease4 "
"WHERE hwaddr = ?"},
-
{MySqlLeaseMgr::GET_LEASE4_HWADDR_SUBID,
"SELECT address, hwaddr, client_id, "
"valid_lifetime, expire, subnet_id "
@@ -496,7 +487,7 @@ private:
///< Hardware address buffer
unsigned long hwaddr_length_; ///< Hardware address length
std::vector<uint8_t> client_id_; ///< Client identification
- uint8_t client_id_buffer_[CLIENT_ID_MAX_LEN];
+ uint8_t client_id_buffer_[ClientId::MAX_CLIENT_ID_LEN];
///< Client ID buffer
unsigned long client_id_length_; ///< Client ID address length
MYSQL_TIME expire_; ///< Lease expiry time
@@ -812,7 +803,7 @@ private:
MYSQL_BIND bind_[LEASE_COLUMNS]; ///< Bind array
std::string columns_[LEASE_COLUMNS];///< Column names
std::vector<uint8_t> duid_; ///< Client identification
- uint8_t duid_buffer_[DUID_MAX_LEN]; ///< Buffer form of DUID
+ uint8_t duid_buffer_[DUID::MAX_DUID_LEN]; ///< Buffer form of DUID
unsigned long duid_length_; ///< Length of the DUID
my_bool error_[LEASE_COLUMNS]; ///< Error indicators
MYSQL_TIME expire_; ///< Lease expiry time
@@ -1222,7 +1213,8 @@ void MySqlLeaseMgr::getLeaseCollection(StatementIndex stindex,
checkError(status, stindex, "unable to fetch results");
} else if (status == MYSQL_DATA_TRUNCATED) {
// Data truncated - throw an exception indicating what was at fault
- isc_throw(DataTruncated, "returned data truncated column affected: "
+ isc_throw(DataTruncated, text_statements_[stindex]
+ << " returned truncated data: columns affected are "
<< exchange->getErrorColumns());
}
}
diff --git a/src/lib/dhcpsrv/tests/lease_mgr_unittest.cc b/src/lib/dhcpsrv/tests/lease_mgr_unittest.cc
index d973999..6384c1c 100644
--- a/src/lib/dhcpsrv/tests/lease_mgr_unittest.cc
+++ b/src/lib/dhcpsrv/tests/lease_mgr_unittest.cc
@@ -345,21 +345,21 @@ TEST(Lease4, OperatorEquals) {
EXPECT_TRUE(lease1 != lease2);
lease1.addr_ = lease2.addr_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.ext_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.ext_ = lease2.ext_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.hwaddr_[0];
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.hwaddr_ = lease2.hwaddr_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++clientid_vec[0];
lease1.client_id_.reset(new ClientId(clientid_vec));
@@ -368,77 +368,77 @@ TEST(Lease4, OperatorEquals) {
--clientid_vec[0];
lease1.client_id_.reset(new ClientId(clientid_vec));
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.t1_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.t1_ = lease2.t1_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.t2_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.t2_ = lease2.t2_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.valid_lft_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.valid_lft_ = lease2.valid_lft_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.cltt_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.cltt_ = lease2.cltt_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.subnet_id_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.subnet_id_ = lease2.subnet_id_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fixed_ = !lease1.fixed_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fixed_ = lease2.fixed_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.hostname_ += string("Something random");
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.hostname_ = lease2.hostname_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fqdn_fwd_ = !lease1.fqdn_fwd_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fqdn_rev_ = !lease1.fqdn_rev_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fqdn_rev_ = lease2.fqdn_rev_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.comments_ += string("Something random");
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.comments_ = lease2.comments_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
}
@@ -514,28 +514,28 @@ TEST(Lease6, OperatorEquals) {
EXPECT_TRUE(lease1 != lease2);
lease1.addr_ = lease2.addr_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.type_ = Lease6::LEASE_IA_PD;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.type_ = lease2.type_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.prefixlen_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.prefixlen_ = lease2.prefixlen_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.iaid_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.iaid_ = lease2.iaid_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++duid_array[0];
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
@@ -544,83 +544,83 @@ TEST(Lease6, OperatorEquals) {
--duid_array[0];
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.preferred_lft_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.preferred_lft_ = lease2.preferred_lft_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.valid_lft_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.valid_lft_ = lease2.valid_lft_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.t1_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.t1_ = lease2.t1_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.t2_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.t2_ = lease2.t2_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.cltt_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.cltt_ = lease2.cltt_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
++lease1.subnet_id_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.subnet_id_ = lease2.subnet_id_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fixed_ = !lease1.fixed_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fixed_ = lease2.fixed_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.hostname_ += string("Something random");
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.hostname_ = lease2.hostname_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fqdn_fwd_ = !lease1.fqdn_fwd_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.fqdn_rev_ = !lease1.fqdn_rev_;
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.fqdn_rev_ = lease2.fqdn_rev_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
lease1.comments_ += string("Something random");
EXPECT_FALSE(lease1 == lease2);
EXPECT_TRUE(lease1 != lease2);
lease1.comments_ = lease2.comments_;
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
- EXPECT_FALSE(lease1 != lease2); // ... lease equal
+ EXPECT_FALSE(lease1 != lease2); // ... leases equal
}
}; // end of anonymous namespace
More information about the bind10-changes
mailing list