Call before performing NF_HOOK and routing in order to perform address
translation in the receive path.
Signed-off-by: Tom Herbert <redacted>
---
net/ipv6/ip6_input.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/net/ipv6/ip6_input.c b/net/ipv6/ip6_input.c
index 9075acf..06dac55 100644
--- a/net/ipv6/ip6_input.c
+++ b/net/ipv6/ip6_input.c
@@ -183,6 +183,9 @@ int ipv6_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt
/* Must drop socket now because of tproxy. */
skb_orphan(skb);
+ /* Translate destination address before routing */
+ xfrm6_xlat_addr(skb);
+
return NF_HOOK(NFPROTO_IPV6, NF_INET_PRE_ROUTING,
net, NULL, skb, dev, NULL,
ip6_rcv_finish);
--
2.4.6