aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/net/rtnetlink.h40
1 files changed, 19 insertions, 21 deletions
diff --git a/include/net/rtnetlink.h b/include/net/rtnetlink.h
index 702664833a53..bb13a182fba6 100644
--- a/include/net/rtnetlink.h
+++ b/include/net/rtnetlink.h
@@ -8,14 +8,12 @@ typedef int (*rtnl_doit_func)(struct sk_buff *, struct nlmsghdr *);
8typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *); 8typedef int (*rtnl_dumpit_func)(struct sk_buff *, struct netlink_callback *);
9typedef u16 (*rtnl_calcit_func)(struct sk_buff *, struct nlmsghdr *); 9typedef u16 (*rtnl_calcit_func)(struct sk_buff *, struct nlmsghdr *);
10 10
11extern int __rtnl_register(int protocol, int msgtype, 11int __rtnl_register(int protocol, int msgtype,
12 rtnl_doit_func, rtnl_dumpit_func, 12 rtnl_doit_func, rtnl_dumpit_func, rtnl_calcit_func);
13 rtnl_calcit_func); 13void rtnl_register(int protocol, int msgtype,
14extern void rtnl_register(int protocol, int msgtype, 14 rtnl_doit_func, rtnl_dumpit_func, rtnl_calcit_func);
15 rtnl_doit_func, rtnl_dumpit_func, 15int rtnl_unregister(int protocol, int msgtype);
16 rtnl_calcit_func); 16void rtnl_unregister_all(int protocol);
17extern int rtnl_unregister(int protocol, int msgtype);
18extern void rtnl_unregister_all(int protocol);
19 17
20static inline int rtnl_msg_family(const struct nlmsghdr *nlh) 18static inline int rtnl_msg_family(const struct nlmsghdr *nlh)
21{ 19{
@@ -83,11 +81,11 @@ struct rtnl_link_ops {
83 unsigned int (*get_num_rx_queues)(void); 81 unsigned int (*get_num_rx_queues)(void);
84}; 82};
85 83
86extern int __rtnl_link_register(struct rtnl_link_ops *ops); 84int __rtnl_link_register(struct rtnl_link_ops *ops);
87extern void __rtnl_link_unregister(struct rtnl_link_ops *ops); 85void __rtnl_link_unregister(struct rtnl_link_ops *ops);
88 86
89extern int rtnl_link_register(struct rtnl_link_ops *ops); 87int rtnl_link_register(struct rtnl_link_ops *ops);
90extern void rtnl_link_unregister(struct rtnl_link_ops *ops); 88void rtnl_link_unregister(struct rtnl_link_ops *ops);
91 89
92/** 90/**
93 * struct rtnl_af_ops - rtnetlink address family operations 91 * struct rtnl_af_ops - rtnetlink address family operations
@@ -117,18 +115,18 @@ struct rtnl_af_ops {
117 const struct nlattr *attr); 115 const struct nlattr *attr);
118}; 116};
119 117
120extern int __rtnl_af_register(struct rtnl_af_ops *ops); 118int __rtnl_af_register(struct rtnl_af_ops *ops);
121extern void __rtnl_af_unregister(struct rtnl_af_ops *ops); 119void __rtnl_af_unregister(struct rtnl_af_ops *ops);
122 120
123extern int rtnl_af_register(struct rtnl_af_ops *ops); 121int rtnl_af_register(struct rtnl_af_ops *ops);
124extern void rtnl_af_unregister(struct rtnl_af_ops *ops); 122void rtnl_af_unregister(struct rtnl_af_ops *ops);
125 123
124struct net *rtnl_link_get_net(struct net *src_net, struct nlattr *tb[]);
125struct net_device *rtnl_create_link(struct net *net, char *ifname,
126 const struct rtnl_link_ops *ops,
127 struct nlattr *tb[]);
128int rtnl_configure_link(struct net_device *dev, const struct ifinfomsg *ifm);
126 129
127extern struct net *rtnl_link_get_net(struct net *src_net, struct nlattr *tb[]);
128extern struct net_device *rtnl_create_link(struct net *net,
129 char *ifname, const struct rtnl_link_ops *ops, struct nlattr *tb[]);
130extern int rtnl_configure_link(struct net_device *dev,
131 const struct ifinfomsg *ifm);
132extern const struct nla_policy ifla_policy[IFLA_MAX+1]; 130extern const struct nla_policy ifla_policy[IFLA_MAX+1];
133 131
134#define MODULE_ALIAS_RTNL_LINK(kind) MODULE_ALIAS("rtnl-link-" kind) 132#define MODULE_ALIAS_RTNL_LINK(kind) MODULE_ALIAS("rtnl-link-" kind)