diff options
author | Hadar Hen Zion <hadarh@mellanox.com> | 2016-09-27 11:21:18 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-09-28 03:11:22 -0400 |
commit | eb523f42d77a43f80bb9c57a34fbdc8406c7b075 (patch) | |
tree | b42d8aa444b6524153598fd79ac898e2c0e63c0a | |
parent | dfdc771d03c13d0e170c27cd845bdab716e73576 (diff) | |
download | op-kernel-dev-eb523f42d77a43f80bb9c57a34fbdc8406c7b075.zip op-kernel-dev-eb523f42d77a43f80bb9c57a34fbdc8406c7b075.tar.gz |
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: bc3103f1ed40 ('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>
-rw-r--r-- | net/sched/cls_flower.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/sched/cls_flower.c b/net/sched/cls_flower.c index 2af09c8..f6f40fb 100644 --- a/net/sched/cls_flower.c +++ b/net/sched/cls_flower.c @@ -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, - &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)); return 0; @@ -919,7 +919,7 @@ static int fl_dump(struct net *net, struct tcf_proto *tp, unsigned long fh, goto nla_put_failure; 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))) goto nla_put_failure; |