[RFC PATCH 12/14] config: clamp ra_mtu into 1280-65535 range
Paul Donald
newtwen+github at gmail.com
Thu May 9 15:30:44 PDT 2024
From: Paul Donald <newtwen at gmail.com>
(ipv6 packets can be up to 4GB in size...)
The old logic had a logic error of || instead of &&
Signed-off-by: Paul Donald <newtwen at gmail.com>
---
src/config.c | 9 ++++-----
1 file changed, 4 insertions(+), 5 deletions(-)
diff --git a/src/config.c b/src/config.c
index 160d7db..f4eaa3b 100644
--- a/src/config.c
+++ b/src/config.c
@@ -971,11 +971,10 @@ int config_parse_interface(void *data, size_t len, const char *name, bool overwr
if ((c = tb[IFACE_ATTR_RA_MTU])) {
uint32_t ra_mtu = blobmsg_get_u32(c);
- if (ra_mtu >= 1280 || ra_mtu <= 65535)
- iface->ra_mtu = ra_mtu;
- else
- syslog(LOG_ERR, "Invalid %s value configured for interface '%s'",
- iface_attrs[IFACE_ATTR_RA_MTU].name, iface->name);
+ iface->ra_mtu = (ra_mtu < 1280) ? 1280 : (ra_mtu > 65535) ? 65535 : ra_mtu;
+ if (!(ra_mtu >= 1280 && ra_mtu <= 65535))
+ syslog(LOG_INFO, "Clamped invalid %s value configured for interface '%s' to %d",
+ iface_attrs[IFACE_ATTR_RA_MTU].name, iface->name, iface->ra_mtu);
}
if ((c = tb[IFACE_ATTR_RA_SLAAC]))
--
2.44.0
More information about the openwrt-devel
mailing list