rtnetlink: return ENODEV when IFLA_ALT_IFNAME is used in dellink
authorFlorent Fourcot <florent.fourcot@wifirst.fr>
Fri, 15 Apr 2022 16:53:29 +0000 (18:53 +0200)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 19 Apr 2022 11:38:50 +0000 (13:38 +0200)
If IFLA_ALT_IFNAME is set and given interface is not found,
we should return ENODEV and be consistent with IFLA_IFNAME
behaviour
This commit extends feature of commit 76c9ac0ee878,
"net: rtnetlink: add possibility to use alternative names as message handle"

CC: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: Florent Fourcot <florent.fourcot@wifirst.fr>
Signed-off-by: Brian Baboch <brian.baboch@wifirst.fr>
Reviewed-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
net/core/rtnetlink.c

index 5899b1d..73f2cbc 100644 (file)
@@ -3158,7 +3158,7 @@ static int rtnl_dellink(struct sk_buff *skb, struct nlmsghdr *nlh,
                goto out;
 
        if (!dev) {
-               if (tb[IFLA_IFNAME] || ifm->ifi_index > 0)
+               if (tb[IFLA_IFNAME] || tb[IFLA_ALT_IFNAME] || ifm->ifi_index > 0)
                        err = -ENODEV;
 
                goto out;