[5007] Suppress DDNS updates on DHCPv6 lease renewals unless the FQDN changes
src/lib/dhcpsrv/alloc_engine.h
src/lib/dhcpsrv/alloc_engine.cc
- AllocEngine::extendLease6()
- AllocEngine::updateLeaseData() - logic was added to clear the context
DNS update flags when the renewal does not alter the lease's FQDN.
src/bin/dhcp6/dhcp6_srv.h
src/bin/dhcp6/dhcp6_srv.cc
- Dhcpv6Srv::createNameChangeRequests() - added context as second parameter,
and modified function to return without creating NCR(s) if both update flags
in the context are false.
src/bin/dhcp6/tests/fqdn_unittest.cc
- TEST_F(FqdnDhcpv6SrvTest, createNameChangeRequests) - modified to verify
combinations of context update flags
- TEST_F(FqdnDhcpv6SrvTest, DISABLED_processTwoRequests) - renamed
to TEST_F(FqdnDhcpv6SrvTest, processTwoRequestsDiffFqdn) and enabled.
It had been disabled pending 3677 which has been completed.
- TEST_F(FqdnDhcpv6SrvTest, processTwoRequestsSameFqdn) - new test
which verifies that client "renewing" a lease by sending a second
request with the different FQDN generates the correct NCRs
- TEST_F(FqdnDhcpv6SrvTest, DISABLED_processRequestRenew) - renamed
to TEST_F(FqdnDhcpv6SrvTest, processRequestRenewDiffFqdn) and enabled.
It had been disabled pending 3677 which has been completed.
- TEST_F(FqdnDhcpv6SrvTest, processRequestRenewSameFqdn) - new test
which verifies that client renewing a lease by sending a renew
with the same FQDN does NOT generate any NCRs
Marcin Siodelski [Wed, 31 Aug 2016 17:35:00 +0000 (19:35 +0200)]
[github22] Several minor changes after another review.
- Updates to the unit tests.
- Improved commentary in unit tests.
- Renamed methods and updated commentary in command_options.h/cc
- Hold the number of relay encapsulations configured with -A.
- Updated perfdhcp man page.
Marcin Siodelski [Wed, 31 Aug 2016 09:12:22 +0000 (11:12 +0200)]
[github22] Squashed changes from pallotron/perfdhcp_random_mac_from_list.
This change includes MAC address lists for perfdhcp as well as
a command line option for generating relayed traffic in DHCPv6.
This patch was contributed by Angelo Failla.
Tomek Mrugalski [Thu, 25 Aug 2016 14:44:55 +0000 (16:44 +0200)]
[4626] Changes after review
- Dhcp4Srv::vendorClassSpecificProcessing removed
- User's Guide updated
- disabled obsolete test (will need to be rewritten to take advantage
of new classification code)
- classes definitions now use strings for server-name and filename
- unused configuration removed from unit-tests
- textFixedFields is now documented
- Unit-tests now have short descriptions
[4294] Changed Memfile stats recount to use existing per-address index
src/lib/dhcpsrv/memfile_lease_mgr.cc
MemfileLeaseStatsQuery4::start()
MemfileLeaseStatsQuery6::start() - both now rely on per-address index,
rather than adding per subnet_id index.
src/lib/dhcpsrv/memfile_lease_storage.h
Removed per subnet_id indexes
[4294] Refactored AddressStatsRow and AddressStatsQuery classes
src/lib/dhcpsrv/cfg_subnets4.cc
CfgSubnets4::updateStatistics() - replaced recountAddressStats4()
with recountLeaseStats4()
src/lib/dhcpsrv/cfg_subnets6.cc
CfgSubnets6::updateStatistics() - replaced recountAddressStats6()
with recountLeaseStats6()
src/lib/dhcpsrv/lease_mgr.cc
renamed LeaseMgr::recountAddressStats4() to recountLeaseStats4()
renamed LeaseMgr::recountAddressStats6() to recountLeaseStats6()
renamed LeaseMgr::startAddressStats4() to startLeaseStats4()
renamed LeaseMgr::startAddressStats6() to startLeaseStats6()
src/lib/dhcpsrv/lease_mgr.h
replaced AddressStatsRow4 and AddressStatsRow6 with single class,
LeaseStatsRow
replaced AddressStatsQuery4 and AddressStatsQuery6 with single class,
AddressStatsQuery
src/lib/dhcpsrv/memfile_lease_mgr.h
src/lib/dhcpsrv/memfile_lease_mgr.cc
Replaced this class heirarchy:
AddressStatsQuery4 <-- MemfileAddressStatsQuery4
AddressStatsQuery6 <-- MemfileAddressStatsQuery6
With this one:
LeaseStatsQuery
|
+--- MemfileLeaseStatsQuery
|
+--- MemfileLeaseStatsQuery4
|
+--- MemfileLeaseStatsQuery6
Replaced startAddressStatsQuery4() with startLeaseStatsQuery4()
Replaced startAddressStatsQuery6() with startLeaseStatsQuery6()
src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.h
src/lib/dhcpsrv/tests/generic_lease_mgr_unittest.cc
Renamed:
checkAddressStats() to checkLeaseStats()
testAddressLeaseStats4() to testRecountLeaseStats4()
testAddressLeaseStats6() to testRecountLeaseStats6()
src/lib/dhcpsrv/tests/memfile_lease_mgr_unittest.cc
Renamed tests to recountLeaseStats4 and recountLeaseStats6