mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-16 02:01:18 -04:00
net: shaper: enforce singleton NETDEV scope with id 0
The NETDEV scope represents a singleton root shaper in the per-device
hierarchy. All code assumes NETDEV shapers have id 0:
net_shaper_default_parent() hardcodes parent->id = 0 when returning
the NETDEV parent for QUEUE/NODE children, and the UAPI documentation
describes NETDEV scope as "the main shaper" (singular, not plural).
Make sure we reject non-0 IDs.
Fixes: 4b623f9f0f ("net-shapers: implement NL get operation")
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Link: https://patch.msgid.link/20260510192904.3987113-10-kuba@kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
committed by
Paolo Abeni
parent
8d5806c600
commit
b62b29e6de
@@ -482,6 +482,12 @@ static int net_shaper_parse_handle(const struct nlattr *attr,
|
||||
else if (handle->scope == NET_SHAPER_SCOPE_NODE)
|
||||
id = NET_SHAPER_ID_UNSPEC;
|
||||
|
||||
if (id && handle->scope == NET_SHAPER_SCOPE_NETDEV) {
|
||||
NL_SET_ERR_MSG_ATTR(info->extack, id_attr,
|
||||
"Netdev scope is a singleton, must use ID 0");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
handle->id = id;
|
||||
return 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user