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:
@ -296,15 +296,25 @@ static inline struct rtable *ip_route_newports(struct flowi4 *fl4, struct rtable
|
||||
|
||||
extern void rt_bind_peer(struct rtable *rt, __be32 daddr, int create);
|
||||
|
||||
static inline struct inet_peer *rt_get_peer(struct rtable *rt, __be32 daddr)
|
||||
static inline struct inet_peer *__rt_get_peer(struct rtable *rt, __be32 daddr, int create)
|
||||
{
|
||||
if (rt->peer)
|
||||
return rt->peer;
|
||||
|
||||
rt_bind_peer(rt, daddr, 0);
|
||||
rt_bind_peer(rt, daddr, create);
|
||||
return rt->peer;
|
||||
}
|
||||
|
||||
static inline struct inet_peer *rt_get_peer(struct rtable *rt, __be32 daddr)
|
||||
{
|
||||
return __rt_get_peer(rt, daddr, 0);
|
||||
}
|
||||
|
||||
static inline struct inet_peer *rt_get_peer_create(struct rtable *rt, __be32 daddr)
|
||||
{
|
||||
return __rt_get_peer(rt, daddr, 1);
|
||||
}
|
||||
|
||||
static inline int inet_iif(const struct sk_buff *skb)
|
||||
{
|
||||
return skb_rtable(skb)->rt_iif;
|
||||
|
Reference in New Issue
Block a user