diff --git a/trunk/linux-4.4.x/drivers/net/ppp/pppoe.c b/trunk/linux-4.4.x/drivers/net/ppp/pppoe.c index 5be37bb2b..6701f1df9 100644 --- a/trunk/linux-4.4.x/drivers/net/ppp/pppoe.c +++ b/trunk/linux-4.4.x/drivers/net/ppp/pppoe.c @@ -496,6 +496,9 @@ static int pppoe_disc_rcv(struct sk_buff *skb, struct net_device *dev, if (!skb) goto out; + if (skb->pkt_type != PACKET_HOST) + goto abort; + if (!pskb_may_pull(skb, sizeof(struct pppoe_hdr))) goto abort;