mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 10:31:46 +09:00
netfilter: nft_payload: rebuild vlan header when needed
[ Upstream commit de6843be30 ]
Skip rebuilding the vlan header when accessing destination and source
mac address.
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Stable-dep-of: 33c563ebf8d3 ("netfilter: nft_payload: skbuff vlan metadata mangle support")
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
de47cbfc86
commit
96f261d56c
@@ -126,7 +126,8 @@ void nft_payload_eval(const struct nft_expr *expr,
|
|||||||
if (!skb_mac_header_was_set(skb) || skb_mac_header_len(skb) == 0)
|
if (!skb_mac_header_was_set(skb) || skb_mac_header_len(skb) == 0)
|
||||||
goto err;
|
goto err;
|
||||||
|
|
||||||
if (skb_vlan_tag_present(skb)) {
|
if (skb_vlan_tag_present(skb) &&
|
||||||
|
priv->offset >= offsetof(struct ethhdr, h_proto)) {
|
||||||
if (!nft_payload_copy_vlan(dest, skb,
|
if (!nft_payload_copy_vlan(dest, skb,
|
||||||
priv->offset, priv->len))
|
priv->offset, priv->len))
|
||||||
goto err;
|
goto err;
|
||||||
|
|||||||
Reference in New Issue
Block a user