net/sched: cls_flower: Use a proper mask value for enc key id parameter
The current code use the encapsulation key id value as the mask of that
parameter which is wrong. Fix that by using a full mask.
Fixes: bc3103f1ed
('net/sched: cls_flower: Classify packet in ip tunnels')
Signed-off-by: Hadar Hen Zion <hadarh@mellanox.com>
Acked-by: Amir Vadai <amir@vadai.me>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
dfdc771d03
commit
eb523f42d7
@@ -481,7 +481,7 @@ static int fl_set_key(struct net *net, struct nlattr **tb,
|
|||||||
}
|
}
|
||||||
|
|
||||||
fl_set_key_val(tb, &key->enc_key_id.keyid, TCA_FLOWER_KEY_ENC_KEY_ID,
|
fl_set_key_val(tb, &key->enc_key_id.keyid, TCA_FLOWER_KEY_ENC_KEY_ID,
|
||||||
&mask->enc_key_id.keyid, TCA_FLOWER_KEY_ENC_KEY_ID,
|
&mask->enc_key_id.keyid, TCA_FLOWER_UNSPEC,
|
||||||
sizeof(key->enc_key_id.keyid));
|
sizeof(key->enc_key_id.keyid));
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
@@ -919,7 +919,7 @@ static int fl_dump(struct net *net, struct tcf_proto *tp, unsigned long fh,
|
|||||||
goto nla_put_failure;
|
goto nla_put_failure;
|
||||||
|
|
||||||
if (fl_dump_key_val(skb, &key->enc_key_id, TCA_FLOWER_KEY_ENC_KEY_ID,
|
if (fl_dump_key_val(skb, &key->enc_key_id, TCA_FLOWER_KEY_ENC_KEY_ID,
|
||||||
&mask->enc_key_id, TCA_FLOWER_KEY_ENC_KEY_ID,
|
&mask->enc_key_id, TCA_FLOWER_UNSPEC,
|
||||||
sizeof(key->enc_key_id)))
|
sizeof(key->enc_key_id)))
|
||||||
goto nla_put_failure;
|
goto nla_put_failure;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user