From: Roopa Prabhu Date: Tue, 21 Jul 2015 08:43:50 +0000 (+0200) Subject: ipv4: redirect dst output to lwtunnel output X-Git-Tag: v4.3-rc1~96^2~330^2~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8602a625024737602630fe0dee423b3096d31524;p=platform%2Fkernel%2Flinux-exynos.git ipv4: redirect dst output to lwtunnel output For input routes with tunnel encap state this patch redirects dst output functions to lwtunnel_output which later resolves to the corresponding lwtunnel output function. This has been tested to work with mpls ip tunnels. Signed-off-by: Roopa Prabhu Signed-off-by: David S. Miller --- diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 226570b..cd3157c 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1633,6 +1633,8 @@ static int __mkroute_input(struct sk_buff *skb, rth->dst.output = ip_output; rt_set_nexthop(rth, daddr, res, fnhe, res->fi, res->type, itag); + if (lwtunnel_output_redirect(rth->rt_lwtstate)) + rth->dst.output = lwtunnel_output; skb_dst_set(skb, &rth->dst); out: err = 0;