Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 7d08263a authored by Maciej Żenczykowski's avatar Maciej Żenczykowski
Browse files

BACKPORT: net: dev_is_mac_header_xmit() true for ARPHRD_RAWIP



__bpf_redirect() and act_mirred checks this boolean
to determine whether to prefix an ethernet header.

Signed-off-by: default avatarMaciej Żenczykowski <maze@google.com>
Acked-by: default avatarDaniel Borkmann <daniel@iogearbox.net>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>

Note: this is commit 3b707c3008cad04604c1f50e39f456621821c414 upstream,
but it does not trivially cherrypick to 4.9, because the function does
not yet exist, and because ARPHRD_RAWIP is not yet defined.  However,
ARPHRD_RAWIP does exist in many device kernels, so by hiding it in
 #ifdef/#endif clause, we fix any device kernels which merge common.

Bug: 65674744
Change-Id: I79a14d064738805f4c82612b020406cd75eb872c
parent d79aa412
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -1711,6 +1711,9 @@ static int __bpf_redirect(struct sk_buff *skb, struct net_device *dev,
	case ARPHRD_IPGRE:
	case ARPHRD_VOID:
	case ARPHRD_NONE:
#ifdef ARPHRD_RAWIP
	case ARPHRD_RAWIP:
#endif
		return __bpf_redirect_no_mac(skb, dev, flags);
	default:
		return __bpf_redirect_common(skb, dev, flags);