lkml.org 
[lkml]   [2020]   [Jun]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 4.9 12/42] pppoe: only process PADT targeted at local interfaces
    Date
    From: Guillaume Nault <gnault@redhat.com>

    We don't want to disconnect a session because of a stray PADT arriving
    while the interface is in promiscuous mode.
    Furthermore, multicast and broadcast packets make no sense here, so
    only PACKET_HOST is accepted.

    Reported-by: David Balažic <xerces9@gmail.com>
    Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
    Signed-off-by: Guillaume Nault <gnault@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    ---
    drivers/net/ppp/pppoe.c | 3 +++
    1 file changed, 3 insertions(+)

    diff --git a/drivers/net/ppp/pppoe.c b/drivers/net/ppp/pppoe.c
    index fa8f7c40a384..804c52c35f07 100644
    --- a/drivers/net/ppp/pppoe.c
    +++ b/drivers/net/ppp/pppoe.c
    @@ -494,6 +494,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;

    --
    2.25.1


    \
     
     \ /
      Last update: 2020-06-09 19:48    [W:4.042 / U:0.200 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site