if (ia_hdr->iaid != 1 || l_t2 < l_t1)
continue;
+ bool error = false;
uint16_t stype, slen;
uint8_t *sdata;
// Test status and bail if error
stype, slen, sdata)
if (stype == DHCPV6_OPT_STATUS && slen >= 2 &&
(sdata[0] || sdata[1]))
- continue;
+ error = true;
+
+ if (error)
+ continue;
// Update times
if (l_t1 > 0 && t1 > l_t1)
uint8_t *sdata;
// Find prefix class, if any
- dhcpv6_for_each_option(odata, odata + olen,
+ dhcpv6_for_each_option(&prefix[1], odata + olen,
stype, slen, sdata)
if (stype == DHCPV6_OPT_PREFIX_CLASS && slen == 2)
entry.prefix_class = ntohs(*((uint16_t*)sdata));