|
@@ -380,6 +380,9 @@ static int pppoe_rcv_core(struct sock *sk, struct sk_buff *skb)
|
|
|
* can't change.
|
|
* can't change.
|
|
|
*/
|
|
*/
|
|
|
|
|
|
|
|
|
|
+ if (skb->pkt_type == PACKET_OTHERHOST)
|
|
|
|
|
+ goto abort_kfree;
|
|
|
|
|
+
|
|
|
if (sk->sk_state & PPPOX_BOUND) {
|
|
if (sk->sk_state & PPPOX_BOUND) {
|
|
|
ppp_input(&po->chan, skb);
|
|
ppp_input(&po->chan, skb);
|
|
|
} else if (sk->sk_state & PPPOX_RELAY) {
|
|
} else if (sk->sk_state & PPPOX_RELAY) {
|