network: radv: ignore Assign= if prefixlen is larger than 64

This commit is contained in:
Yu Watanabe
2021-10-07 01:09:09 +09:00
parent 00f1261d39
commit fcd7ad52d7
+11
View File
@@ -215,6 +215,17 @@ int link_request_radv_addresses(Link *link) {
if (r < 0)
return r;
/* generate_eui64_address() below requires the prefix length <= 64. */
if (prefixlen > 64) {
_cleanup_free_ char *str = NULL;
(void) in6_addr_prefix_to_string(&prefix, prefixlen, &str);
log_link_debug(link,
"Prefix is longer than 64, refusing to assign an address in %s.",
strna(str));
continue;
}
r = address_new(&address);
if (r < 0)
return log_oom();