On 2020-11-24 2:26 PM, Roi Dayan wrote:
When protocol is vlan then eth_type is set to the vlan eth type.
So when parsing vlan_id and vlan_prio need to check tc_proto
is vlan and not eth_type.
Fixes: 4c551369e083 ("tc flower: use right ethertype in icmp/arp parsing")
Signed-off-by: Roi Dayan <r...@nvidia.com>
---
tc/f_flower.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/tc/f_flower.c b/tc/f_flower.c
index 58e1140d7391..9b278f3c0e83 100644
--- a/tc/f_flower.c
+++ b/tc/f_flower.c
@@ -1432,7 +1432,7 @@ static int flower_parse_opt(struct filter_util *qu, char
*handle,
__u16 vid;
NEXT_ARG();
- if (!eth_type_vlan(eth_type)) {
+ if (!eth_type_vlan(tc_proto)) {
fprintf(stderr, "Can't set \"vlan_id\" if ethertype
isn't 802.1Q or 802.1AD\n");
return -1;
}
@@ -1446,7 +1446,7 @@ static int flower_parse_opt(struct filter_util *qu, char
*handle,
__u8 vlan_prio;
NEXT_ARG();
- if (!eth_type_vlan(eth_type)) {
+ if (!eth_type_vlan(tc_proto)) {
fprintf(stderr, "Can't set \"vlan_prio\" if
ethertype isn't 802.1Q or 802.1AD\n");
return -1;
}
sorry should have tagged as iproute2-next.
ignore this i sent with correct tag.