inet: Create and use rt{,6}_get_peer_create().
There's a lot of places that open-code rt{,6}_get_peer() only because they want to set 'create' to one. So add an rt{,6}_get_peer_create() for their sake. There were also a few spots open-coding plain rt{,6}_get_peer() and those are transformed here as well. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7123aaa3a1
commit
fbfe95a42e
10 changed files with 49 additions and 58 deletions
|
@ -1472,6 +1472,7 @@ void ndisc_send_redirect(struct sk_buff *skb, const struct in6_addr *target)
|
|||
struct net *net = dev_net(dev);
|
||||
struct sock *sk = net->ipv6.ndisc_sk;
|
||||
int len = sizeof(struct icmp6hdr) + 2 * sizeof(struct in6_addr);
|
||||
struct inet_peer *peer;
|
||||
struct sk_buff *buff;
|
||||
struct icmp6hdr *icmph;
|
||||
struct in6_addr saddr_buf;
|
||||
|
@ -1518,9 +1519,8 @@ void ndisc_send_redirect(struct sk_buff *skb, const struct in6_addr *target)
|
|||
"Redirect: destination is not a neighbour\n");
|
||||
goto release;
|
||||
}
|
||||
if (!rt->rt6i_peer)
|
||||
rt6_bind_peer(rt, 1);
|
||||
if (!inet_peer_xrlim_allow(rt->rt6i_peer, 1*HZ))
|
||||
peer = rt6_get_peer_create(rt);
|
||||
if (!inet_peer_xrlim_allow(peer, 1*HZ))
|
||||
goto release;
|
||||
|
||||
if (dev->addr_len) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue