return;
}
+ // Get the update directions that should be performed based on our
+ // response FQDN flags.
+ bool do_fwd = false;
+ bool do_rev = false;
+ CfgMgr::instance().getD2ClientMgr().getUpdateDirections(*opt_fqdn,
+ do_fwd, do_rev);
+ if (!do_fwd && !do_rev) {
+ // Flags indicate there is Nothing to do, get out now.
+ // The Most likely scenario is that we are honoring the client's
+ // request that no updates be done.
+ return;
+ }
+
// Get the Client Id. It is mandatory and a function creating a response
// would have thrown an exception if it was missing. Thus throwning
// Unexpected if it is missing as it is a programming error.
// Create new NameChangeRequest. Use the domain name from the FQDN.
// This is an FQDN included in the response to the client, so it
// holds a fully qualified domain-name already (not partial).
- // Get the IP address from the lease. Also, use the S flag to determine
- // if forward change should be performed. This flag will always be
- // set if server has taken responsibility for the forward update.
- // Use the inverse of the N flag to determine if a reverse change
- // should be performed.
+ // Get the IP address from the lease.
NameChangeRequestPtr ncr;
- bool do_fwd = false;
- bool do_rev = false;
- CfgMgr::instance().getD2ClientMgr().getUpdateDirections(*opt_fqdn,
- do_fwd, do_rev);
ncr.reset(new NameChangeRequest(isc::dhcp_ddns::CHG_ADD,
do_fwd, do_rev,
opt_fqdn->getDomainName(),