diff options
Diffstat (limited to 'drivers/net/pppoe.c')
-rw-r--r-- | drivers/net/pppoe.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/pppoe.c b/drivers/net/pppoe.c index 53fcee26d6ae..60c0e4e17875 100644 --- a/drivers/net/pppoe.c +++ b/drivers/net/pppoe.c | |||
@@ -389,6 +389,9 @@ static int pppoe_rcv(struct sk_buff *skb, | |||
389 | if (!(skb = skb_share_check(skb, GFP_ATOMIC))) | 389 | if (!(skb = skb_share_check(skb, GFP_ATOMIC))) |
390 | goto out; | 390 | goto out; |
391 | 391 | ||
392 | if (dev->nd_net != &init_net) | ||
393 | goto drop; | ||
394 | |||
392 | if (!pskb_may_pull(skb, sizeof(struct pppoe_hdr))) | 395 | if (!pskb_may_pull(skb, sizeof(struct pppoe_hdr))) |
393 | goto drop; | 396 | goto drop; |
394 | 397 | ||
@@ -418,6 +421,9 @@ static int pppoe_disc_rcv(struct sk_buff *skb, | |||
418 | struct pppoe_hdr *ph; | 421 | struct pppoe_hdr *ph; |
419 | struct pppox_sock *po; | 422 | struct pppox_sock *po; |
420 | 423 | ||
424 | if (dev->nd_net != &init_net) | ||
425 | goto abort; | ||
426 | |||
421 | if (!pskb_may_pull(skb, sizeof(struct pppoe_hdr))) | 427 | if (!pskb_may_pull(skb, sizeof(struct pppoe_hdr))) |
422 | goto abort; | 428 | goto abort; |
423 | 429 | ||