diff options
author | Hans Dedecker <dedeckeh@gmail.com> | 2018-02-20 11:23:25 +0100 |
---|---|---|
committer | Hans Dedecker <dedeckeh@gmail.com> | 2018-02-20 16:04:29 +0100 |
commit | 96033e937c56a407d8ca9302c5901cd77366da29 (patch) | |
tree | 2bf63dc76b0c0499d06a7164e38dd87762ef75e6 /src | |
parent | 7aa2594c5a127d92fa8f04328ac7b43e595bcaa7 (diff) |
dhcpv6-ia: don't always send reconf accept option (FS#1377)
Send reconfigure accept and reconfigure key authentication protocol options
only if the client indicates it supports reconfigure accept as descibed
in RFC3315 paragraph 21.5.
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/dhcpv6-ia.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dhcpv6-ia.c b/src/dhcpv6-ia.c index 533af00..9afde3f 100644 --- a/src/dhcpv6-ia.c +++ b/src/dhcpv6-ia.c @@ -1222,7 +1222,8 @@ ssize_t dhcpv6_handle_ia(uint8_t *buf, size_t buflen, struct interface *iface, if (!assigned || iface->addr6_len == 0) /* Set error status */ status = (is_pd) ? DHCPV6_STATUS_NOPREFIXAVAIL : DHCPV6_STATUS_NOADDRSAVAIL; - else if (assigned && !first && hdr->msg_type != DHCPV6_MSG_REBIND) { + else if (accept_reconf && assigned && !first && + hdr->msg_type != DHCPV6_MSG_REBIND) { size_t handshake_len = 4; buf[0] = 0; buf[1] = DHCPV6_OPT_RECONF_ACCEPT; |