mirror of
https://gitlab.isc.org/isc-projects/kea
synced 2025-08-22 09:57:41 +00:00
[#2629] added origin for ha lease commands
This commit is contained in:
parent
5aa1ecfbd5
commit
fda083c259
@ -425,6 +425,26 @@ Examples:
|
||||
|
||||
2018-01-06 01:02:12 CET Administrator deleted a lease for a device identified by: hw-address of 1a:1b:1c:1d:1e:1f
|
||||
|
||||
If High availability module is enabled, the partner will periodically send lease
|
||||
commands which have a similar format, the only difference is that the issuer of
|
||||
the command is 'HA partner' instead of 'Administrator'.
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner added ...
|
||||
|
||||
or
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner updated ...
|
||||
|
||||
or
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner deleted ...
|
||||
|
||||
The ``request-parser-format`` and ``response-parser-format`` options can be used to
|
||||
extract and log data from the incoming packet and server response packet,
|
||||
respectively. The configured value is an evaluated parsed expression returning a
|
||||
@ -730,6 +750,26 @@ Examples:
|
||||
|
||||
2018-01-06 01:02:11 PST Administrator deleted a lease for a device identified by: duid of 1a:1b:1c:1d:1e:1f:20:21:22:23:24
|
||||
|
||||
If High availability module is enabled, the partner will periodically send lease
|
||||
commands which have a similar format, the only difference is that the issuer of
|
||||
the command is 'HA partner' instead of 'Administrator'.
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner added ...
|
||||
|
||||
or
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner updated ...
|
||||
|
||||
or
|
||||
|
||||
::
|
||||
|
||||
*timestamp* HA partner deleted ...
|
||||
|
||||
The ``request-parser-format`` and ``response-parser-format`` options can be used to
|
||||
extract and log data from the incoming packet and server response packet,
|
||||
respectively. The configured value is an evaluated parsed expression returning a
|
||||
|
@ -81,6 +81,7 @@ CommandCreator::createLease4Update(const Lease4& lease4) {
|
||||
ElementPtr lease_as_json = lease4.toElement();
|
||||
insertLeaseExpireTime(lease_as_json);
|
||||
lease_as_json->set("force-create", Element::create(true));
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
ConstElementPtr command = config::createCommand("lease4-update", lease_as_json);
|
||||
insertService(command, HAServerType::DHCPv4);
|
||||
return (command);
|
||||
@ -90,6 +91,7 @@ ConstElementPtr
|
||||
CommandCreator::createLease4Delete(const Lease4& lease4) {
|
||||
ElementPtr lease_as_json = lease4.toElement();
|
||||
insertLeaseExpireTime(lease_as_json);
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
ConstElementPtr command = config::createCommand("lease4-del", lease_as_json);
|
||||
insertService(command, HAServerType::DHCPv4);
|
||||
return (command);
|
||||
@ -149,6 +151,7 @@ CommandCreator::createLease6BulkApply(const Lease6CollectionPtr& leases,
|
||||
ElementPtr args = Element::createMap();
|
||||
args->set("deleted-leases", deleted_leases_list);
|
||||
args->set("leases", leases_list);
|
||||
args->set("origin", Element::create("ha-partner"));
|
||||
|
||||
ConstElementPtr command = config::createCommand("lease6-bulk-apply", args);
|
||||
insertService(command, HAServerType::DHCPv6);
|
||||
@ -175,6 +178,7 @@ CommandCreator::createLease6BulkApply(LeaseUpdateBacklog& leases) {
|
||||
ElementPtr args = Element::createMap();
|
||||
args->set("deleted-leases", deleted_leases_list);
|
||||
args->set("leases", leases_list);
|
||||
args->set("origin", Element::create("ha-partner"));
|
||||
|
||||
ConstElementPtr command = config::createCommand("lease6-bulk-apply", args);
|
||||
insertService(command, HAServerType::DHCPv6);
|
||||
@ -186,6 +190,7 @@ CommandCreator::createLease6Update(const Lease6& lease6) {
|
||||
ElementPtr lease_as_json = lease6.toElement();
|
||||
insertLeaseExpireTime(lease_as_json);
|
||||
lease_as_json->set("force-create", Element::create(true));
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
ConstElementPtr command = config::createCommand("lease6-update", lease_as_json);
|
||||
insertService(command, HAServerType::DHCPv6);
|
||||
return (command);
|
||||
@ -195,6 +200,7 @@ ConstElementPtr
|
||||
CommandCreator::createLease6Delete(const Lease6& lease6) {
|
||||
ElementPtr lease_as_json = lease6.toElement();
|
||||
insertLeaseExpireTime(lease_as_json);
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
ConstElementPtr command = config::createCommand("lease6-del", lease_as_json);
|
||||
insertService(command, HAServerType::DHCPv6);
|
||||
return (command);
|
||||
|
@ -208,6 +208,7 @@ TEST(CommandCreatorTest, createLease4Update) {
|
||||
// The lease update must contain the "force-create" parameter indicating that
|
||||
// the lease must be created if it doesn't exist.
|
||||
lease_as_json->set("force-create", Element::create(true));
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
EXPECT_EQ(lease_as_json->str(), arguments->str());
|
||||
}
|
||||
|
||||
@ -219,6 +220,7 @@ TEST(CommandCreatorTest, createLease4Delete) {
|
||||
ASSERT_NO_FATAL_FAILURE(testCommandBasics(command, "lease4-del", "dhcp4",
|
||||
arguments));
|
||||
ElementPtr lease_as_json = leaseAsJson(createLease4());
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
EXPECT_EQ(lease_as_json->str(), arguments->str());
|
||||
}
|
||||
|
||||
@ -334,6 +336,7 @@ TEST(CommandCreatorTest, createLease6Update) {
|
||||
// The lease update must contain the "force-create" parameter indicating that
|
||||
// the lease must be created if it doesn't exist.
|
||||
lease_as_json->set("force-create", Element::create(true));
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
EXPECT_EQ(lease_as_json->str(), arguments->str());
|
||||
}
|
||||
|
||||
@ -345,6 +348,7 @@ TEST(CommandCreatorTest, createLease6Delete) {
|
||||
ASSERT_NO_FATAL_FAILURE(testCommandBasics(command, "lease6-del", "dhcp6",
|
||||
arguments));
|
||||
ElementPtr lease_as_json = leaseAsJson(createLease6());
|
||||
lease_as_json->set("origin", Element::create("ha-partner"));
|
||||
EXPECT_EQ(lease_as_json->str(), arguments->str());
|
||||
}
|
||||
|
||||
@ -364,6 +368,10 @@ TEST(CommandCreatorTest, createLease6BulkApply) {
|
||||
ASSERT_NO_FATAL_FAILURE(testCommandBasics(command, "lease6-bulk-apply",
|
||||
"dhcp6", arguments));
|
||||
|
||||
ConstElementPtr origin = arguments->get("origin");
|
||||
ASSERT_TRUE(origin);
|
||||
ASSERT_EQ("ha-partner", origin->stringValue());
|
||||
|
||||
// Verify deleted-leases.
|
||||
auto deleted_leases_json = arguments->get("deleted-leases");
|
||||
ASSERT_TRUE(deleted_leases_json);
|
||||
@ -396,6 +404,10 @@ TEST(CommandCreatorTest, createLease6BulkApplyFromBacklog) {
|
||||
ASSERT_NO_FATAL_FAILURE(testCommandBasics(command, "lease6-bulk-apply",
|
||||
"dhcp6", arguments));
|
||||
|
||||
ConstElementPtr origin = arguments->get("origin");
|
||||
ASSERT_TRUE(origin);
|
||||
ASSERT_EQ("ha-partner", origin->stringValue());
|
||||
|
||||
// Verify deleted-leases.
|
||||
auto deleted_leases_json = arguments->get("deleted-leases");
|
||||
ASSERT_TRUE(deleted_leases_json);
|
||||
|
Loading…
x
Reference in New Issue
Block a user