struct dhcpv6_ia_hdr hdr_ia_na = {
htons(DHCPV6_OPT_IA_NA),
htons(sizeof(hdr_ia_na) - 4),
- 1, 0, 0
+ htonl(1), 0, 0
};
struct dhcpv6_ia_addr pa[ia_na_entries];
struct dhcpv6_ia_hdr *ia_hdr = (void*)(&odata[-4]);
// Test ID
- if (ia_hdr->iaid != 1 && otype == DHCPV6_OPT_IA_NA)
+ if (ia_hdr->iaid != htonl(1) && otype == DHCPV6_OPT_IA_NA)
continue;
uint16_t code = DHCPV6_Success;
odhcp6c_add_state(STATE_DNS, odata, olen);
} else if (otype == DHCPV6_OPT_DNS_DOMAIN) {
odhcp6c_add_state(STATE_SEARCH, odata, olen);
+ passthru = false;
} else if (otype == DHCPV6_OPT_SNTP_SERVERS) {
if (olen % 16 == 0)
odhcp6c_add_state(STATE_SNTP_IP, odata, olen);
otype == DHCPV6_OPT_IA_TA ||
otype == DHCPV6_OPT_PREF ||
otype == DHCPV6_OPT_UNICAST ||
- otype == DHCPV6_OPT_FQDN) {
+ otype == DHCPV6_OPT_FQDN ||
+ otype == DHCPV6_OPT_RECONF_ACCEPT) {
passthru = false;
} else {
odhcp6c_add_state(STATE_CUSTOM_OPTS, &odata[-4], olen + 4);