From cc7766c12abe799d3abc4657965fa9c1a0058fbb Mon Sep 17 00:00:00 2001 From: Paul Donald Date: Fri, 3 Oct 2025 16:33:41 +0200 Subject: [PATCH] router: Apply updated values from RFC8319 (updates RFC4861) to RA/ND MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit https://www.rfc-editor.org/rfc/rfc8319#section-4 Signed-off-by: Paul Donald Link: https://github.com/openwrt/odhcpd/pull/225 Signed-off-by: Álvaro Fernández Rojas --- src/router.c | 4 ++-- src/router.h | 25 +++++++++++++++++++++++-- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/src/router.c b/src/router.c index 079a5d1..e9b4372 100644 --- a/src/router.c +++ b/src/router.c @@ -379,8 +379,8 @@ static uint32_t calc_ra_lifetime(struct interface *iface, uint32_t maxival) if (lifetime > 0 && lifetime < maxival) lifetime = maxival; - else if (lifetime > 9000) - lifetime = 9000; + else if (lifetime > RouterLifetime) + lifetime = RouterLifetime; return lifetime; } diff --git a/src/router.h b/src/router.h index 0444da8..19b0079 100644 --- a/src/router.h +++ b/src/router.h @@ -32,8 +32,29 @@ struct icmpv6_opt { #define MaxInitialRtrAdvInterval 16 #define MaxInitialRtAdvs 3 -#define MaxRtrAdvInterval 1800 -#define MinRtrAdvInterval 3 +/* RFC8319 §4 + This document updates §4.2 and 6.2.1 of [RFC4861] to change + the following router configuration variables. + + In §6.2.1, inside the paragraph that defines + MaxRtrAdvInterval, change 1800 to 65535 seconds. + + In §6.2.1, inside the paragraph that defines + AdvDefaultLifetime, change 9000 to 65535 seconds. +*/ +#define MaxRtrAdvInterval 65535 +#define MinRtrAdvInterval 3 +#define AdvDefaultLifetime 65535 +/* RFC8319 §4 + This document updates §4.2 and 6.2.1 of [RFC4861] to change + the following router configuration variables. + + In §4.2, inside the paragraph that defines Router Lifetime, + change 9000 to 65535 seconds. + + Note: this is 16 bit Router Lifetime field in RA packets +*/ +#define RouterLifetime 65535 #define ND_RA_FLAG_PROXY 0x4 #define ND_RA_PREF_HIGH (1 << 3) -- 2.30.2