net: rtnetlink: add msg kind names
Add rtnl kind names instead of using raw values. We'll need to check for DEL kind later to validate bulk flag support. Signed-off-by: Nikolay Aleksandrov <razor@blackwall.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Родитель
ae10162c7e
Коммит
12dc5c2cb7
|
@ -13,6 +13,13 @@ enum rtnl_link_flags {
|
|||
RTNL_FLAG_DOIT_UNLOCKED = 1,
|
||||
};
|
||||
|
||||
enum rtnl_kinds {
|
||||
RTNL_KIND_NEW,
|
||||
RTNL_KIND_DEL,
|
||||
RTNL_KIND_GET,
|
||||
RTNL_KIND_SET
|
||||
};
|
||||
|
||||
void rtnl_register(int protocol, int msgtype,
|
||||
rtnl_doit_func, rtnl_dumpit_func, unsigned int flags);
|
||||
int rtnl_register_module(struct module *owner, int protocol, int msgtype,
|
||||
|
|
|
@ -5928,11 +5928,11 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh,
|
|||
{
|
||||
struct net *net = sock_net(skb->sk);
|
||||
struct rtnl_link *link;
|
||||
enum rtnl_kinds kind;
|
||||
struct module *owner;
|
||||
int err = -EOPNOTSUPP;
|
||||
rtnl_doit_func doit;
|
||||
unsigned int flags;
|
||||
int kind;
|
||||
int family;
|
||||
int type;
|
||||
|
||||
|
@ -5949,11 +5949,11 @@ static int rtnetlink_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh,
|
|||
family = ((struct rtgenmsg *)nlmsg_data(nlh))->rtgen_family;
|
||||
kind = type&3;
|
||||
|
||||
if (kind != 2 && !netlink_net_capable(skb, CAP_NET_ADMIN))
|
||||
if (kind != RTNL_KIND_GET && !netlink_net_capable(skb, CAP_NET_ADMIN))
|
||||
return -EPERM;
|
||||
|
||||
rcu_read_lock();
|
||||
if (kind == 2 && nlh->nlmsg_flags&NLM_F_DUMP) {
|
||||
if (kind == RTNL_KIND_GET && (nlh->nlmsg_flags & NLM_F_DUMP)) {
|
||||
struct sock *rtnl;
|
||||
rtnl_dumpit_func dumpit;
|
||||
u32 min_dump_alloc = 0;
|
||||
|
|
Загрузка…
Ссылка в новой задаче