mirror of
https://github.com/torvalds/linux.git
synced 2026-10-06 10:36:03 +02:00
net: allow IFLA_INET_CONF messages when NLA_F_NESTED unset
Commitfa8fca8871("ipv4: validate IPV4_DEVCONF attributes properly") added validation of IFLA_INET_CONF attributes, and in the process changed the call of nla_for_each_nested() to nla_parse_nested(). A side effect of this change is that the IFLA_INET_CONF option is now tested for NLA_F_NESTED being set, and fails if it is not. Prior to the commit there was no check of NLA_F_NESTED. Change nla_parse_nested() to nla_parse(). This restores the previous functionality of not checking NLA_F_NESTED, thereby allowing code that (incorrectly) doesn't set NLA_F_NESTED to continue to work. This issue was identified because keepalived started logging errors when it was configuring macvlans that it created. Fixes:fa8fca8871("ipv4: validate IPV4_DEVCONF attributes properly") Signed-off-by: Quentin Armitage <quentin@armitage.org.uk> Reviewed-by: Ido Schimmel <idosch@nvidia.com> Link: https://patch.msgid.link/20260915213320.1527029-2-quentin@armitage.org.uk Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
4581c3d2ad
commit
6c096bb08d
|
|
@ -2117,9 +2117,10 @@ static int inet_validate_link_af(const struct net_device *dev,
|
|||
return err;
|
||||
|
||||
if (tb[IFLA_INET_CONF]) {
|
||||
err = nla_parse_nested(nested_tb, IPV4_DEVCONF_MAX,
|
||||
tb[IFLA_INET_CONF], inet_devconf_policy,
|
||||
extack);
|
||||
err = nla_parse(nested_tb, IPV4_DEVCONF_MAX,
|
||||
nla_data(tb[IFLA_INET_CONF]),
|
||||
nla_len(tb[IFLA_INET_CONF]),
|
||||
inet_devconf_policy, extack);
|
||||
|
||||
if (err < 0)
|
||||
return err;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user