mirror of https://gitee.com/openkylin/linux.git
[RTNL]: Improve error codes for unsupported operations
The most common trigger of these errors is that the config option hasn't been enable wich would make the functionality available. Therefore returning EOPNOTSUPP gives a better idea on what is going wrong. Signed-off-by: Thomas Graf <tgraf@suug.ch> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
716ea3a7aa
commit
038890fed8
|
@ -862,7 +862,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
|
|||
|
||||
type = nlh->nlmsg_type;
|
||||
if (type > RTM_MAX)
|
||||
return -EINVAL;
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
type -= RTM_BASE;
|
||||
|
||||
|
@ -885,7 +885,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
|
|||
|
||||
dumpit = rtnl_get_dumpit(family, type);
|
||||
if (dumpit == NULL)
|
||||
return -EINVAL;
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return netlink_dump_start(rtnl, skb, nlh, dumpit, NULL);
|
||||
}
|
||||
|
@ -913,7 +913,7 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
|
|||
|
||||
doit = rtnl_get_doit(family, type);
|
||||
if (doit == NULL)
|
||||
return -EINVAL;
|
||||
return -EOPNOTSUPP;
|
||||
|
||||
return doit(skb, nlh, (void *)&rta_buf[0]);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue