mirror of
https://github.com/torvalds/linux.git
synced 2026-06-08 06:25:52 +02:00
ip_tunnel: Fix route fl4 init in ip_md_tunnel_xmit
[ Upstream commit6e6b904ad4] Init the gre_key from tuninfo->key.tun_id and init the mark from the skb->mark, set the oif to zero in the collect metadata mode. Fixes:cfc7381b30("ip_tunnel: add collect_md mode to IPIP tunnel") Signed-off-by: wenxu <wenxu@ucloud.cn> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
dda7599436
commit
7761d0c1c4
|
|
@ -574,8 +574,9 @@ void ip_md_tunnel_xmit(struct sk_buff *skb, struct net_device *dev, u8 proto)
|
|||
else if (skb->protocol == htons(ETH_P_IPV6))
|
||||
tos = ipv6_get_dsfield((const struct ipv6hdr *)inner_iph);
|
||||
}
|
||||
ip_tunnel_init_flow(&fl4, proto, key->u.ipv4.dst, key->u.ipv4.src, 0,
|
||||
RT_TOS(tos), tunnel->parms.link, tunnel->fwmark);
|
||||
ip_tunnel_init_flow(&fl4, proto, key->u.ipv4.dst, key->u.ipv4.src,
|
||||
tunnel_id_to_key32(key->tun_id), RT_TOS(tos),
|
||||
0, skb->mark);
|
||||
if (tunnel->encap.type != TUNNEL_ENCAP_NONE)
|
||||
goto tx_error;
|
||||
rt = ip_route_output_key(tunnel->net, &fl4);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user