[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