diff options
author | Kuniyuki Iwashima <kuniyu@amazon.com> | 2023-07-18 20:41:51 +0300 |
---|---|---|
committer | Paolo Abeni <pabeni@redhat.com> | 2023-07-20 11:46:28 +0300 |
commit | 6631463b6e6673916d2481f692938f393148aa82 (patch) | |
tree | ed1578e320536705cf3a31b0068fd57b59ddcb2e /net/llc | |
parent | 97b1d320f48c21e40cc42b4ac033f2520f9ecc5c (diff) | |
download | linux-6631463b6e6673916d2481f692938f393148aa82.tar.xz |
llc: Don't drop packet from non-root netns.
Now these upper layer protocol handlers can be called from llc_rcv()
as sap->rcv_func(), which is registered by llc_sap_open().
* function which is passed to register_8022_client()
-> no in-kernel user calls register_8022_client().
* snap_rcv()
`- proto->rcvfunc() : registered by register_snap_client()
-> aarp_rcv() and atalk_rcv() drop packets from non-root netns
* stp_pdu_rcv()
`- garp_protos[]->rcv() : registered by stp_proto_register()
-> garp_pdu_rcv() and br_stp_rcv() are netns-aware
So, we can safely remove the netns restriction in llc_rcv().
Fixes: e730c15519d0 ("[NET]: Make packet reception network namespace safe")
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'net/llc')
-rw-r--r-- | net/llc/llc_input.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/net/llc/llc_input.c b/net/llc/llc_input.c index c309b72a5877..7cac441862e2 100644 --- a/net/llc/llc_input.c +++ b/net/llc/llc_input.c @@ -163,9 +163,6 @@ int llc_rcv(struct sk_buff *skb, struct net_device *dev, void (*sta_handler)(struct sk_buff *skb); void (*sap_handler)(struct llc_sap *sap, struct sk_buff *skb); - if (!net_eq(dev_net(dev), &init_net)) - goto drop; - /* * When the interface is in promisc. mode, drop all the crap that it * receives, do not try to analyse it. |