diff options
author | David S. Miller <davem@davemloft.net> | 2012-07-03 00:52:24 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-05 04:04:01 -0400 |
commit | f894cbf847c9bea1955095bf37aca6c050553167 (patch) | |
tree | 9cc63b36c2d299bba95ea90213f4a9ef0ae433d6 /net/xfrm/xfrm_policy.c | |
parent | 5110effee8fde2edfacac9cd12a9960ab2dc39ea (diff) |
net: Add optional SKB arg to dst_ops->neigh_lookup().
Causes the handler to use the daddr in the ipv4/ipv6 header when
the route gateway is unspecified (local subnet).
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/xfrm/xfrm_policy.c')
-rw-r--r-- | net/xfrm/xfrm_policy.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/xfrm/xfrm_policy.c b/net/xfrm/xfrm_policy.c index ccfbd328a69d..a28a3f972d5b 100644 --- a/net/xfrm/xfrm_policy.c +++ b/net/xfrm/xfrm_policy.c | |||
@@ -2404,9 +2404,11 @@ static unsigned int xfrm_mtu(const struct dst_entry *dst) | |||
2404 | return mtu ? : dst_mtu(dst->path); | 2404 | return mtu ? : dst_mtu(dst->path); |
2405 | } | 2405 | } |
2406 | 2406 | ||
2407 | static struct neighbour *xfrm_neigh_lookup(const struct dst_entry *dst, const void *daddr) | 2407 | static struct neighbour *xfrm_neigh_lookup(const struct dst_entry *dst, |
2408 | struct sk_buff *skb, | ||
2409 | const void *daddr) | ||
2408 | { | 2410 | { |
2409 | return dst_neigh_lookup(dst->path, daddr); | 2411 | return dst->path->ops->neigh_lookup(dst, skb, daddr); |
2410 | } | 2412 | } |
2411 | 2413 | ||
2412 | int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo) | 2414 | int xfrm_policy_register_afinfo(struct xfrm_policy_afinfo *afinfo) |