lease file is corrupt in certain ways.
[ISC-Bugs #39760]
- Changes since 4.1-ESV-R11rc2
+- Corrected an issue in v6 lease file parsing. Prior to this, when encountering
+ a lease with an address for which no configured pool exists, the server was
+ declaring the lease file corrupt and incorrectly skipping over the subsequent
+ entry in the file. The server will now emit a log message indicating that
+ no pool was found for the address (or prefix) and correctly resume parsing
+ with the next entry in the lease file.
+ [ISC-Bugs #39314]
+ Changes since 4.1-ESV-R11rc2
- None
Changes since 4.1-ESV-R11rc1
&iaaddr->addr) != ISC_R_SUCCESS) {
inet_ntop(AF_INET6, &iaaddr->addr,
addr_buf, sizeof(addr_buf));
- parse_warn(cfile, "no pool found for address %s",
- addr_buf);
- return;
+ log_error("No pool found for IA_NA address %s",
+ addr_buf);
+ iasubopt_dereference(&iaaddr, MDL);
+ continue;
}
/* remove old information */
&iaaddr->addr) != ISC_R_SUCCESS) {
inet_ntop(AF_INET6, &iaaddr->addr,
addr_buf, sizeof(addr_buf));
- parse_warn(cfile, "no pool found for address %s",
- addr_buf);
- return;
+ log_error("No pool found for IA_TA address %s",
+ addr_buf);
+ iasubopt_dereference(&iaaddr, MDL);
+ continue;
}
/* remove old information */
&iapref->addr) != ISC_R_SUCCESS) {
inet_ntop(AF_INET6, &iapref->addr,
addr_buf, sizeof(addr_buf));
- parse_warn(cfile, "no pool found for address %s",
- addr_buf);
- return;
+ log_error("No pool found for prefix %s", addr_buf);
+ iasubopt_dereference(&iapref, MDL);
+ continue;
}
/* remove old information */