Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/usr.sbin/rtadvd rtadvd: fix rdnss and dnssl lifetime assignment



details:   https://anonhg.NetBSD.org/src/rev/0dfdb822bbfc
branches:  trunk
changeset: 842059:0dfdb822bbfc
user:      roy <roy%NetBSD.org@localhost>
date:      Fri Jun 14 09:06:45 2019 +0000

description:
rtadvd: fix rdnss and dnssl lifetime assignment

Treat it the same as a prefix valid time as per the RFC.
This allows to set a zero value to remove the assignment from the node.

diffstat:

 usr.sbin/rtadvd/config.c |  10 +++-------
 1 files changed, 3 insertions(+), 7 deletions(-)

diffs (31 lines):

diff -r 5824610c7eef -r 0dfdb822bbfc usr.sbin/rtadvd/config.c
--- a/usr.sbin/rtadvd/config.c  Fri Jun 14 05:59:39 2019 +0000
+++ b/usr.sbin/rtadvd/config.c  Fri Jun 14 09:06:45 2019 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: config.c,v 1.40 2018/04/20 15:57:23 roy Exp $  */
+/*     $NetBSD: config.c,v 1.41 2019/06/14 09:06:45 roy Exp $  */
 /*     $KAME: config.c,v 1.93 2005/10/17 14:40:02 suz Exp $    */
 
 /*
@@ -701,9 +701,7 @@
 
                makeentry(entbuf, sizeof(entbuf), i, "rdnssltime");
                MAYHAVE(val64, entbuf, tmp->maxinterval * 3 / 2);
-               if (val64 < tmp->maxinterval ||
-                   val64 > tmp->maxinterval * 2)
-               {
+               if (val64 < 0 || val64 > 0xffffffff) {
                        logit(LOG_ERR, "<%s> %s (%lld) on %s is invalid",
                             __func__, entbuf, (long long)val64, intface);
                        goto errexit;
@@ -737,9 +735,7 @@
 
                makeentry(entbuf, sizeof(entbuf), i, "dnsslltime");
                MAYHAVE(val64, entbuf, tmp->maxinterval * 3 / 2);
-               if (val64 < tmp->maxinterval ||
-                   val64 > tmp->maxinterval * 2)
-               {
+               if (val64 < 0 || val64 > 0xffffffff) {
                        logit(LOG_ERR, "<%s> %s (%lld) on %s is invalid",
                             __func__, entbuf, (long long)val64, intface);
                        goto errexit;



Home | Main Index | Thread Index | Old Index