Message ID | 1429350794-17170-1-git-send-email-Joakim.Tjernlund@transmode.se |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
From: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> Date: Sat, 18 Apr 2015 11:53:14 +0200 > A pppoe session is identified by its session ID and MAC address. > Currently pppoe does not check if the received pkg has the correct > MAC address. This is a problem when the eth I/F is in promisc mode > as then any DST MAC address is accepted. Please read Documentation/SubmittingPatches in the source tree, you need to provide a proper signoff. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 2015-04-20 at 14:11 -0400, David Miller wrote: > From: Joakim Tjernlund <Joakim.Tjernlund@transmode.se> > Date: Sat, 18 Apr 2015 11:53:14 +0200 > > > A pppoe session is identified by its session ID and MAC address. > > Currently pppoe does not check if the received pkg has the correct > > MAC address. This is a problem when the eth I/F is in promisc mode > > as then any DST MAC address is accepted. > > Please read Documentation/SubmittingPatches in the source tree, you > need to provide a proper signoff. Arg! I know this but this time it slipped my mind :( So sorry, I will send a v3 soon. Jocke-- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c index ff059e1..aa1dd92 100644 --- a/drivers/net/ppp/pppoe.c +++ b/drivers/net/ppp/pppoe.c @@ -380,6 +380,9 @@ static int pppoe_rcv_core(struct sock *sk, struct sk_buff *skb) * can't change. */ + if (skb->pkt_type == PACKET_OTHERHOST) + goto abort_kfree; + if (sk->sk_state & PPPOX_BOUND) { ppp_input(&po->chan, skb); } else if (sk->sk_state & PPPOX_RELAY) {