Commit bb1a64b8 authored by Thomas Markwalder's avatar Thomas Markwalder

[#722,!1] Addressed review comments

   revamped Dhpc6srv::sanityCheckDuid() per review comments on
   1.4.0 version.
parent 9812d232
......@@ -218,6 +218,9 @@ Kea 1.6.0-beta2 released on July 24, 2019
1610. [build] fdupont
Removed the obsolete compatcheck top directory.
(Gitlab #667,!391, git 8cb113a52f0cf56fbdb5cb0e87464135234c2ac1)
=======
(Gitlab #722,!1-p git TBD)
>>>>>>> [#722,!1] Addressed review comments
1609. [bug] fdupont
Fixed the implementation of authentication keys in DHCPv6
......
......@@ -1411,17 +1411,10 @@ void Dhcpv6Srv::sanityCheckDUID(const OptionPtr& opt, const std::string& opt_nam
// The client-id or server-id has to have at least 3 bytes of useful data:
// two for duid type and one more for actual duid value.
uint16_t len = opt->len() - opt->getHeaderLen();
if (len < 3) {
isc_throw(RFCViolation, "Received empty or truncated " << opt_name << " option: "
<< len << " byte(s) only");
}
// We need to make sure we can construct one, if not we're toast later on.
try {
DuidPtr tmp(new DUID(opt->getData()));
} catch (const std::exception& ex) {
isc_throw(RFCViolation, "Received invalid content for "
<< opt_name << ", " << ex.what());
if (len < 3 || len > DUID::MAX_DUID_LEN || opt->getData().empty()) {
isc_throw(RFCViolation, "Received invalid DUID for " << opt_name << ", received "
<< len << " byte(s). It must be at least 3 and no more than "
<< DUID::MAX_DUID_LEN);
}
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment