2e833117db60a5209f865ab13f94423bf86c07aa
[openwrt/staging/rmilecki.git] / target / linux / generic / pending-5.10 / 640-14-netfilter-nft_flow_offload-add-bridge-vlan-filtering.patch
1 From: Pablo Neira Ayuso <pablo@netfilter.org>
2 Date: Sun, 24 Jan 2021 18:01:34 +0100
3 Subject: [PATCH] netfilter: nft_flow_offload: add bridge vlan filtering
4 support
5
6 Add the vlan tag based when PVID is set on.
7
8 Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
9 ---
10
11 --- a/net/netfilter/nft_flow_offload.c
12 +++ b/net/netfilter/nft_flow_offload.c
13 @@ -112,6 +112,18 @@ static void nft_dev_path_info(const stru
14 if (is_zero_ether_addr(info->h_source))
15 memcpy(info->h_source, path->dev->dev_addr, ETH_ALEN);
16
17 + switch (path->bridge.vlan_mode) {
18 + case DEV_PATH_BR_VLAN_TAG:
19 + info->vid[info->num_vlans] = path->vlan.id;
20 + info->vproto[info->num_vlans] = path->vlan.proto;
21 + info->num_vlans++;
22 + break;
23 + case DEV_PATH_BR_VLAN_UNTAG:
24 + info->num_vlans--;
25 + break;
26 + case DEV_PATH_BR_VLAN_KEEP:
27 + break;
28 + }
29 info->xmit_type = FLOW_OFFLOAD_XMIT_DIRECT;
30 break;
31 default: