diff options
| author | Thomas Graf <tgraf@suug.ch> | 2013-03-21 03:45:29 -0400 |
|---|---|---|
| committer | David S. Miller <davem@davemloft.net> | 2013-03-22 10:31:16 -0400 |
| commit | 661d2967b3f1b34eeaa7e212e7b9bbe8ee072b59 (patch) | |
| tree | 66090f1be05a40962838114d66cb085875f58c8a /net/ipv6 | |
| parent | 58d7d8f9b20ee6f883532b952f246e4289fe06eb (diff) | |
rtnetlink: Remove passing of attributes into rtnl_doit functions
With decnet converted, we can finally get rid of rta_buf and its
computations around it. It also gets rid of the minimal header
length verification since all message handlers do that explicitly
anyway.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv6')
| -rw-r--r-- | net/ipv6/addrconf.c | 10 | ||||
| -rw-r--r-- | net/ipv6/addrlabel.c | 6 | ||||
| -rw-r--r-- | net/ipv6/route.c | 6 |
3 files changed, 9 insertions, 13 deletions
diff --git a/net/ipv6/addrconf.c b/net/ipv6/addrconf.c index fa36a677490f..15794fdaf028 100644 --- a/net/ipv6/addrconf.c +++ b/net/ipv6/addrconf.c | |||
| @@ -544,8 +544,7 @@ static const struct nla_policy devconf_ipv6_policy[NETCONFA_MAX+1] = { | |||
| 544 | }; | 544 | }; |
| 545 | 545 | ||
| 546 | static int inet6_netconf_get_devconf(struct sk_buff *in_skb, | 546 | static int inet6_netconf_get_devconf(struct sk_buff *in_skb, |
| 547 | struct nlmsghdr *nlh, | 547 | struct nlmsghdr *nlh) |
| 548 | void *arg) | ||
| 549 | { | 548 | { |
| 550 | struct net *net = sock_net(in_skb->sk); | 549 | struct net *net = sock_net(in_skb->sk); |
| 551 | struct nlattr *tb[NETCONFA_MAX+1]; | 550 | struct nlattr *tb[NETCONFA_MAX+1]; |
| @@ -3578,7 +3577,7 @@ static const struct nla_policy ifa_ipv6_policy[IFA_MAX+1] = { | |||
| 3578 | }; | 3577 | }; |
| 3579 | 3578 | ||
| 3580 | static int | 3579 | static int |
| 3581 | inet6_rtm_deladdr(struct sk_buff *skb, struct nlmsghdr *nlh, void *arg) | 3580 | inet6_rtm_deladdr(struct sk_buff *skb, struct nlmsghdr *nlh) |
| 3582 | { | 3581 | { |
| 3583 | struct net *net = sock_net(skb->sk); | 3582 | struct net *net = sock_net(skb->sk); |
| 3584 | struct ifaddrmsg *ifm; | 3583 | struct ifaddrmsg *ifm; |
| @@ -3644,7 +3643,7 @@ static int inet6_addr_modify(struct inet6_ifaddr *ifp, u8 ifa_flags, | |||
| 3644 | } | 3643 | } |
| 3645 | 3644 | ||
| 3646 | static int | 3645 | static int |
| 3647 | inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh, void *arg) | 3646 | inet6_rtm_newaddr(struct sk_buff *skb, struct nlmsghdr *nlh) |
| 3648 | { | 3647 | { |
| 3649 | struct net *net = sock_net(skb->sk); | 3648 | struct net *net = sock_net(skb->sk); |
| 3650 | struct ifaddrmsg *ifm; | 3649 | struct ifaddrmsg *ifm; |
| @@ -3983,8 +3982,7 @@ static int inet6_dump_ifacaddr(struct sk_buff *skb, struct netlink_callback *cb) | |||
| 3983 | return inet6_dump_addr(skb, cb, type); | 3982 | return inet6_dump_addr(skb, cb, type); |
| 3984 | } | 3983 | } |
| 3985 | 3984 | ||
| 3986 | static int inet6_rtm_getaddr(struct sk_buff *in_skb, struct nlmsghdr *nlh, | 3985 | static int inet6_rtm_getaddr(struct sk_buff *in_skb, struct nlmsghdr *nlh) |
| 3987 | void *arg) | ||
| 3988 | { | 3986 | { |
| 3989 | struct net *net = sock_net(in_skb->sk); | 3987 | struct net *net = sock_net(in_skb->sk); |
| 3990 | struct ifaddrmsg *ifm; | 3988 | struct ifaddrmsg *ifm; |
diff --git a/net/ipv6/addrlabel.c b/net/ipv6/addrlabel.c index 6f226c850c91..f083a583a05c 100644 --- a/net/ipv6/addrlabel.c +++ b/net/ipv6/addrlabel.c | |||
| @@ -414,8 +414,7 @@ static const struct nla_policy ifal_policy[IFAL_MAX+1] = { | |||
| 414 | [IFAL_LABEL] = { .len = sizeof(u32), }, | 414 | [IFAL_LABEL] = { .len = sizeof(u32), }, |
| 415 | }; | 415 | }; |
| 416 | 416 | ||
| 417 | static int ip6addrlbl_newdel(struct sk_buff *skb, struct nlmsghdr *nlh, | 417 | static int ip6addrlbl_newdel(struct sk_buff *skb, struct nlmsghdr *nlh) |
| 418 | void *arg) | ||
| 419 | { | 418 | { |
| 420 | struct net *net = sock_net(skb->sk); | 419 | struct net *net = sock_net(skb->sk); |
| 421 | struct ifaddrlblmsg *ifal; | 420 | struct ifaddrlblmsg *ifal; |
| @@ -530,8 +529,7 @@ static inline int ip6addrlbl_msgsize(void) | |||
| 530 | + nla_total_size(4); /* IFAL_LABEL */ | 529 | + nla_total_size(4); /* IFAL_LABEL */ |
| 531 | } | 530 | } |
| 532 | 531 | ||
| 533 | static int ip6addrlbl_get(struct sk_buff *in_skb, struct nlmsghdr* nlh, | 532 | static int ip6addrlbl_get(struct sk_buff *in_skb, struct nlmsghdr* nlh) |
| 534 | void *arg) | ||
| 535 | { | 533 | { |
| 536 | struct net *net = sock_net(in_skb->sk); | 534 | struct net *net = sock_net(in_skb->sk); |
| 537 | struct ifaddrlblmsg *ifal; | 535 | struct ifaddrlblmsg *ifal; |
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index e5fe0041adfa..ad0aa6b0b86a 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
| @@ -2355,7 +2355,7 @@ beginning: | |||
| 2355 | return last_err; | 2355 | return last_err; |
| 2356 | } | 2356 | } |
| 2357 | 2357 | ||
| 2358 | static int inet6_rtm_delroute(struct sk_buff *skb, struct nlmsghdr* nlh, void *arg) | 2358 | static int inet6_rtm_delroute(struct sk_buff *skb, struct nlmsghdr* nlh) |
| 2359 | { | 2359 | { |
| 2360 | struct fib6_config cfg; | 2360 | struct fib6_config cfg; |
| 2361 | int err; | 2361 | int err; |
| @@ -2370,7 +2370,7 @@ static int inet6_rtm_delroute(struct sk_buff *skb, struct nlmsghdr* nlh, void *a | |||
| 2370 | return ip6_route_del(&cfg); | 2370 | return ip6_route_del(&cfg); |
| 2371 | } | 2371 | } |
| 2372 | 2372 | ||
| 2373 | static int inet6_rtm_newroute(struct sk_buff *skb, struct nlmsghdr* nlh, void *arg) | 2373 | static int inet6_rtm_newroute(struct sk_buff *skb, struct nlmsghdr* nlh) |
| 2374 | { | 2374 | { |
| 2375 | struct fib6_config cfg; | 2375 | struct fib6_config cfg; |
| 2376 | int err; | 2376 | int err; |
| @@ -2562,7 +2562,7 @@ int rt6_dump_route(struct rt6_info *rt, void *p_arg) | |||
| 2562 | prefix, 0, NLM_F_MULTI); | 2562 | prefix, 0, NLM_F_MULTI); |
| 2563 | } | 2563 | } |
| 2564 | 2564 | ||
| 2565 | static int inet6_rtm_getroute(struct sk_buff *in_skb, struct nlmsghdr* nlh, void *arg) | 2565 | static int inet6_rtm_getroute(struct sk_buff *in_skb, struct nlmsghdr* nlh) |
| 2566 | { | 2566 | { |
| 2567 | struct net *net = sock_net(in_skb->sk); | 2567 | struct net *net = sock_net(in_skb->sk); |
| 2568 | struct nlattr *tb[RTA_MAX+1]; | 2568 | struct nlattr *tb[RTA_MAX+1]; |
