aboutsummaryrefslogtreecommitdiff
path: root/dhcp6s.c
diff options
context:
space:
mode:
authorSUZUKI, Shinsuke <suz@kame.net>2007-03-22 06:06:03 +0000
committerBjørn Mork <bjorn@mork.no>2010-08-06 15:37:36 +0200
commitfb7626d31e760b0995679de9a56caea3831bbd49 (patch)
treede0868b54a3c26fd9a651cc3935da7d42cad3ac3 /dhcp6s.c
parent9a651a9b0f3937b1483c563852a63b93723daab8 (diff)
fixed a bug that Rebind does not work for IA-NA.
Diffstat (limited to 'dhcp6s.c')
-rw-r--r--dhcp6s.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/dhcp6s.c b/dhcp6s.c
index cd0f479..273877f 100644
--- a/dhcp6s.c
+++ b/dhcp6s.c
@@ -1850,15 +1850,16 @@ react_rebind(ifp, dh6, len, optinfo, from, fromlen, relayinfohead)
}
/*
- * If the returned iapd_list is empty, we do not have an explicit
- * knowledge about validity nor invalidity for any IA_PD information
+ * If the returned iana/pd_list is empty, we do not have an explicit
+ * knowledge about validity nor invalidity for any IA_NA/PD information
* in the Rebind message. In this case, we should rather ignore the
* message than to send a Reply with empty information back to the
* client, which may annoy the recipient. However, if we have at least
* one useful information, either positive or negative, based on some
* explicit knowledge, we should reply with the responsible part.
*/
- if (TAILQ_EMPTY(&roptinfo.iapd_list)) {
+ if (TAILQ_EMPTY(&roptinfo.iapd_list) &&
+ TAILQ_EMPTY(&roptinfo.iana_list)) {
dprintf(LOG_INFO, FNAME, "no useful information for a rebind");
goto fail; /* discard the rebind */
}