mirror of
https://github.com/raspberrypi/linux.git
synced 2025-12-15 22:41:38 +00:00
arp: use RCU protection in arp_xmit()
[ Upstream commita42b69f692] arp_xmit() can be called without RTNL or RCU protection. Use RCU protection to avoid potential UAF. Fixes:29a26a5680("netfilter: Pass struct net into the netfilter hooks") Signed-off-by: Eric Dumazet <edumazet@google.com> Reviewed-by: David Ahern <dsahern@kernel.org> Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com> Link: https://patch.msgid.link/20250207135841.1948589-5-edumazet@google.com Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
cdd5c2a12d
commit
01d1b5c9ab
@@ -659,10 +659,12 @@ static int arp_xmit_finish(struct net *net, struct sock *sk, struct sk_buff *skb
|
||||
*/
|
||||
void arp_xmit(struct sk_buff *skb)
|
||||
{
|
||||
rcu_read_lock();
|
||||
/* Send it off, maybe filter it using firewalling first. */
|
||||
NF_HOOK(NFPROTO_ARP, NF_ARP_OUT,
|
||||
dev_net(skb->dev), NULL, skb, NULL, skb->dev,
|
||||
dev_net_rcu(skb->dev), NULL, skb, NULL, skb->dev,
|
||||
arp_xmit_finish);
|
||||
rcu_read_unlock();
|
||||
}
|
||||
EXPORT_SYMBOL(arp_xmit);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user