mirror of https://gitee.com/openkylin/linux.git
net/sched: act_tunnel_key: Don't dump dst port if it wasn't set
It's possible to set a tunnel without a destination port. However, on dump(), a zero dst port is returned to user space even if it was not set, fix that. Note that so far it wasn't required, b/c key less tunnels were not supported and the UDP tunnels do require destination port. Signed-off-by: Adi Nissim <adin@mellanox.com> Reviewed-by: Oz Shlomo <ozsh@mellanox.com> Acked-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
80ef0f22ce
commit
1c25324caf
|
@ -512,7 +512,9 @@ static int tunnel_key_dump(struct sk_buff *skb, struct tc_action *a,
|
|||
nla_put_be32(skb, TCA_TUNNEL_KEY_ENC_KEY_ID, key_id)) ||
|
||||
tunnel_key_dump_addresses(skb,
|
||||
¶ms->tcft_enc_metadata->u.tun_info) ||
|
||||
nla_put_be16(skb, TCA_TUNNEL_KEY_ENC_DST_PORT, key->tp_dst) ||
|
||||
(key->tp_dst &&
|
||||
nla_put_be16(skb, TCA_TUNNEL_KEY_ENC_DST_PORT,
|
||||
key->tp_dst)) ||
|
||||
nla_put_u8(skb, TCA_TUNNEL_KEY_NO_CSUM,
|
||||
!(key->tun_flags & TUNNEL_CSUM)) ||
|
||||
tunnel_key_opts_dump(skb, info))
|
||||
|
|
Loading…
Reference in New Issue