RFC3315 Section 18.2.7 states a status code OK needs to be returned by the server :
After all the addresses have been processed, the server generates a Reply message and
includes a Status Code option with the value Success, a Server Identifier option with
the server's DUID, and a Client Identifier option with the client's DUID.
response_len += ia_response_len;
}
- if (hdr->msg_type == DHCPV6_MSG_RELEASE && response_len + 6 < buflen) {
+ if ((hdr->msg_type == DHCPV6_MSG_RELEASE || hdr->msg_type == DHCPV6_MSG_DECLINE) &&
+ response_len + 6 < buflen) {
buf[0] = 0;
buf[1] = DHCPV6_OPT_STATUS;
buf[2] = 0;