mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-09-01 06:25:34 +00:00
[2404] Updated comments etc.
This commit is contained in:
@@ -45,13 +45,13 @@ class DUID {
|
|||||||
DUID_MAX ///< not a real type, just maximum defined value + 1
|
DUID_MAX ///< not a real type, just maximum defined value + 1
|
||||||
} DUIDType;
|
} DUIDType;
|
||||||
|
|
||||||
/// @brief creates a DUID
|
/// @brief Constructor from vector
|
||||||
DUID(const std::vector<uint8_t>& duid);
|
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);
|
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
|
/// 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
|
/// 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.
|
/// (e.g. storeSelf()) that will avoid data copying.
|
||||||
const std::vector<uint8_t> getDuid() const;
|
const std::vector<uint8_t> getDuid() const;
|
||||||
|
|
||||||
/// @brief returns DUID type
|
/// @brief Returns the DUID type
|
||||||
DUIDType getType() const;
|
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;
|
std::string toText() const;
|
||||||
|
|
||||||
/// compares two DUIDs
|
/// @brief Compares two DUIDs for equality
|
||||||
bool operator==(const DUID& other) const;
|
bool operator==(const DUID& other) const;
|
||||||
|
|
||||||
/// compares two DUIDs
|
/// @brief Compares two DUIDs for inequality
|
||||||
bool operator!=(const DUID& other) const;
|
bool operator!=(const DUID& other) const;
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
/// the actual content of the DUID
|
/// The actual content of the DUID
|
||||||
std::vector<uint8_t> duid_;
|
std::vector<uint8_t> duid_;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/// @brief Shared pointer to a DUID
|
||||||
typedef boost::shared_ptr<DUID> DuidPtr;
|
typedef boost::shared_ptr<DUID> DuidPtr;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// @brief Holds Client identifier or client IPv4 address
|
/// @brief Holds Client identifier or client IPv4 address
|
||||||
///
|
///
|
||||||
/// This class is intended to be a generic IPv4 client identifier. It can hold
|
/// This class is intended to be a generic IPv4 client identifier. It can hold
|
||||||
/// a client-id
|
/// a client-id
|
||||||
class ClientId : DUID {
|
class ClientId : DUID {
|
||||||
public:
|
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;
|
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);
|
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);
|
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;
|
const std::vector<uint8_t> getClientId() const;
|
||||||
|
|
||||||
// compares two client-ids
|
/// @brief Compares two client-ids for equality
|
||||||
bool operator==(const ClientId& other) const;
|
bool operator==(const ClientId& other) const;
|
||||||
|
|
||||||
// compares two client-ids
|
/// @brief Compares two client-ids for inequality
|
||||||
bool operator!=(const ClientId& other) const;
|
bool operator!=(const ClientId& other) const;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@@ -115,8 +115,8 @@ public:
|
|||||||
/// would be required. As this is a critical part of the code that will be used
|
/// would be required. As this is a critical part of the code that will be used
|
||||||
/// extensively, direct access is warranted.
|
/// extensively, direct access is warranted.
|
||||||
struct Lease4 {
|
struct Lease4 {
|
||||||
// The following constants definine the size of fields in the database
|
/// @brief Maximum size of a hardware address
|
||||||
static const size_t HWADDR_MAX = 20; // Maximum size of hardware address
|
static const size_t HWADDR_MAX = 20;
|
||||||
|
|
||||||
/// @brief Constructor
|
/// @brief Constructor
|
||||||
///
|
///
|
||||||
@@ -392,7 +392,7 @@ struct Lease6 {
|
|||||||
/// @brief Pointer to a Lease6 structure.
|
/// @brief Pointer to a Lease6 structure.
|
||||||
typedef boost::shared_ptr<Lease6> Lease6Ptr;
|
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;
|
typedef boost::shared_ptr<const Lease6> ConstLease6Ptr;
|
||||||
|
|
||||||
/// @brief A collection of IPv6 leases.
|
/// @brief A collection of IPv6 leases.
|
||||||
|
@@ -15,6 +15,7 @@
|
|||||||
#include <config.h>
|
#include <config.h>
|
||||||
|
|
||||||
#include <asiolink/io_address.h>
|
#include <asiolink/io_address.h>
|
||||||
|
#include <dhcp/duid.h>
|
||||||
#include <dhcpsrv/mysql_lease_mgr.h>
|
#include <dhcpsrv/mysql_lease_mgr.h>
|
||||||
|
|
||||||
#include <boost/static_assert.hpp>
|
#include <boost/static_assert.hpp>
|
||||||
@@ -91,18 +92,9 @@ namespace {
|
|||||||
/// colon separators.
|
/// colon separators.
|
||||||
const size_t ADDRESS6_TEXT_MAX_LEN = 39;
|
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.
|
/// @brief Maximum size of a hardware address.
|
||||||
const size_t HWADDR_MAX_LEN = 20;
|
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
|
/// @brief Number of columns in Lease4 table
|
||||||
const size_t LEASE4_COLUMNS = 6;
|
const size_t LEASE4_COLUMNS = 6;
|
||||||
|
|
||||||
@@ -156,7 +148,6 @@ TaggedStatement tagged_statements[] = {
|
|||||||
"valid_lifetime, expire, subnet_id "
|
"valid_lifetime, expire, subnet_id "
|
||||||
"FROM lease4 "
|
"FROM lease4 "
|
||||||
"WHERE hwaddr = ?"},
|
"WHERE hwaddr = ?"},
|
||||||
|
|
||||||
{MySqlLeaseMgr::GET_LEASE4_HWADDR_SUBID,
|
{MySqlLeaseMgr::GET_LEASE4_HWADDR_SUBID,
|
||||||
"SELECT address, hwaddr, client_id, "
|
"SELECT address, hwaddr, client_id, "
|
||||||
"valid_lifetime, expire, subnet_id "
|
"valid_lifetime, expire, subnet_id "
|
||||||
@@ -496,7 +487,7 @@ private:
|
|||||||
///< Hardware address buffer
|
///< Hardware address buffer
|
||||||
unsigned long hwaddr_length_; ///< Hardware address length
|
unsigned long hwaddr_length_; ///< Hardware address length
|
||||||
std::vector<uint8_t> client_id_; ///< Client identification
|
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
|
///< Client ID buffer
|
||||||
unsigned long client_id_length_; ///< Client ID address length
|
unsigned long client_id_length_; ///< Client ID address length
|
||||||
MYSQL_TIME expire_; ///< Lease expiry time
|
MYSQL_TIME expire_; ///< Lease expiry time
|
||||||
@@ -812,7 +803,7 @@ private:
|
|||||||
MYSQL_BIND bind_[LEASE_COLUMNS]; ///< Bind array
|
MYSQL_BIND bind_[LEASE_COLUMNS]; ///< Bind array
|
||||||
std::string columns_[LEASE_COLUMNS];///< Column names
|
std::string columns_[LEASE_COLUMNS];///< Column names
|
||||||
std::vector<uint8_t> duid_; ///< Client identification
|
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
|
unsigned long duid_length_; ///< Length of the DUID
|
||||||
my_bool error_[LEASE_COLUMNS]; ///< Error indicators
|
my_bool error_[LEASE_COLUMNS]; ///< Error indicators
|
||||||
MYSQL_TIME expire_; ///< Lease expiry time
|
MYSQL_TIME expire_; ///< Lease expiry time
|
||||||
@@ -1222,7 +1213,8 @@ void MySqlLeaseMgr::getLeaseCollection(StatementIndex stindex,
|
|||||||
checkError(status, stindex, "unable to fetch results");
|
checkError(status, stindex, "unable to fetch results");
|
||||||
} else if (status == MYSQL_DATA_TRUNCATED) {
|
} else if (status == MYSQL_DATA_TRUNCATED) {
|
||||||
// Data truncated - throw an exception indicating what was at fault
|
// 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());
|
<< exchange->getErrorColumns());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -345,21 +345,21 @@ TEST(Lease4, OperatorEquals) {
|
|||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.addr_ = lease2.addr_;
|
lease1.addr_ = lease2.addr_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.ext_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.ext_ = lease2.ext_;
|
lease1.ext_ = lease2.ext_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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];
|
++lease1.hwaddr_[0];
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.hwaddr_ = lease2.hwaddr_;
|
lease1.hwaddr_ = lease2.hwaddr_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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];
|
++clientid_vec[0];
|
||||||
lease1.client_id_.reset(new ClientId(clientid_vec));
|
lease1.client_id_.reset(new ClientId(clientid_vec));
|
||||||
@@ -368,77 +368,77 @@ TEST(Lease4, OperatorEquals) {
|
|||||||
--clientid_vec[0];
|
--clientid_vec[0];
|
||||||
lease1.client_id_.reset(new ClientId(clientid_vec));
|
lease1.client_id_.reset(new ClientId(clientid_vec));
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.t1_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.t1_ = lease2.t1_;
|
lease1.t1_ = lease2.t1_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.t2_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.t2_ = lease2.t2_;
|
lease1.t2_ = lease2.t2_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.valid_lft_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.valid_lft_ = lease2.valid_lft_;
|
lease1.valid_lft_ = lease2.valid_lft_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.cltt_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.cltt_ = lease2.cltt_;
|
lease1.cltt_ = lease2.cltt_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.subnet_id_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.subnet_id_ = lease2.subnet_id_;
|
lease1.subnet_id_ = lease2.subnet_id_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fixed_ = !lease1.fixed_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fixed_ = lease2.fixed_;
|
lease1.fixed_ = lease2.fixed_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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");
|
lease1.hostname_ += string("Something random");
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.hostname_ = lease2.hostname_;
|
lease1.hostname_ = lease2.hostname_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fqdn_fwd_ = !lease1.fqdn_fwd_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
|
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fqdn_rev_ = !lease1.fqdn_rev_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fqdn_rev_ = lease2.fqdn_rev_;
|
lease1.fqdn_rev_ = lease2.fqdn_rev_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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");
|
lease1.comments_ += string("Something random");
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.comments_ = lease2.comments_;
|
lease1.comments_ = lease2.comments_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.addr_ = lease2.addr_;
|
lease1.addr_ = lease2.addr_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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;
|
lease1.type_ = Lease6::LEASE_IA_PD;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.type_ = lease2.type_;
|
lease1.type_ = lease2.type_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.prefixlen_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.prefixlen_ = lease2.prefixlen_;
|
lease1.prefixlen_ = lease2.prefixlen_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.iaid_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.iaid_ = lease2.iaid_;
|
lease1.iaid_ = lease2.iaid_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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];
|
++duid_array[0];
|
||||||
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
|
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
|
||||||
@@ -544,83 +544,83 @@ TEST(Lease6, OperatorEquals) {
|
|||||||
--duid_array[0];
|
--duid_array[0];
|
||||||
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
|
lease1.duid_.reset(new DUID(duid_array, sizeof(duid_array)));
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.preferred_lft_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.preferred_lft_ = lease2.preferred_lft_;
|
lease1.preferred_lft_ = lease2.preferred_lft_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.valid_lft_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.valid_lft_ = lease2.valid_lft_;
|
lease1.valid_lft_ = lease2.valid_lft_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.t1_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.t1_ = lease2.t1_;
|
lease1.t1_ = lease2.t1_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.t2_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.t2_ = lease2.t2_;
|
lease1.t2_ = lease2.t2_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.cltt_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.cltt_ = lease2.cltt_;
|
lease1.cltt_ = lease2.cltt_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
++lease1.subnet_id_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.subnet_id_ = lease2.subnet_id_;
|
lease1.subnet_id_ = lease2.subnet_id_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fixed_ = !lease1.fixed_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fixed_ = lease2.fixed_;
|
lease1.fixed_ = lease2.fixed_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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");
|
lease1.hostname_ += string("Something random");
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.hostname_ = lease2.hostname_;
|
lease1.hostname_ = lease2.hostname_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fqdn_fwd_ = !lease1.fqdn_fwd_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
|
lease1.fqdn_fwd_ = lease2.fqdn_fwd_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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_;
|
lease1.fqdn_rev_ = !lease1.fqdn_rev_;
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.fqdn_rev_ = lease2.fqdn_rev_;
|
lease1.fqdn_rev_ = lease2.fqdn_rev_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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");
|
lease1.comments_ += string("Something random");
|
||||||
EXPECT_FALSE(lease1 == lease2);
|
EXPECT_FALSE(lease1 == lease2);
|
||||||
EXPECT_TRUE(lease1 != lease2);
|
EXPECT_TRUE(lease1 != lease2);
|
||||||
lease1.comments_ = lease2.comments_;
|
lease1.comments_ = lease2.comments_;
|
||||||
EXPECT_TRUE(lease1 == lease2); // Check that the reversion has made the
|
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
|
}; // end of anonymous namespace
|
||||||
|
Reference in New Issue
Block a user