- Update the memory leakage debug code to work with v6.
[ISC-Bugs #30297]
+- Relax the requirements for deleting an A or AAAA record.
+ Previously the DDNS removal code required both the A or AAAA
+ record and the TXT record to exist. This requirement could
+ cause problems if something interrupted the removal leaving
+ the TXT record alone. This relaxation was codified in RFC 4703.
+ [ISC-Bugs #30734]
+
Changes since 4.2.3
! Add a check for a null pointer before calling the regexec function.
* expired or been released.
* -- "Interaction between DHCP and DNS"
*
+ * RFC 4703 has relaxed the prereqisites to only checking the DHCID RR
+ * and we have adopted that to minizmie problems due to interruptions
+ * when doing a deletion.
+ *
* First try has:
* DHCID RR exists, and matches client identity.
- * A RR matches the expiring lease.
* Delete appropriate A RR.
*/
ISC_LIST_APPEND(pname->list, &dataspace->rdataset, link);
dataspace++;
- /* The A RR matches the expiring lease */
- result = make_dns_dataset(dns_rdataclass_in, ddns_cb->address_type,
- dataspace,
- (unsigned char *)ddns_cb->address.iabuf,
- ddns_cb->address.len, 0);
- if (result != ISC_R_SUCCESS) {
- return(result);
- }
- ISC_LIST_APPEND(pname->list, &dataspace->rdataset, link);
- dataspace++;
-
/* Construct the update list */
/* Delete A RRset */
result = make_dns_dataset(dns_rdataclass_none, ddns_cb->address_type,