]> err.no Git - linux-2.6/commitdiff
Add missing skb->dev assignment in Frame Relay RX code
authorKrzysztof Halasa <khc@pm.waw.pl>
Sun, 29 Jun 2008 19:48:11 +0000 (21:48 +0200)
committerJeff Garzik <jgarzik@redhat.com>
Fri, 4 Jul 2008 12:09:39 +0000 (08:09 -0400)
Commit 4c13eb6657fe9ef7b4dc8f1a405c902e9e5234e0 ([ETH]: Make
eth_type_trans set skb->dev like the other *_type_trans) removed
skb->dev assignment from hdlc_fr.c:fr_rx(). Unfortunately it was also
needed for cases other than eth_type_trans().

Adding it back.

It's quite serious and may be a security risk as it causes a wrong
input interface indication (the physical hdlcX instead of logical
pvcX). Probably -stable class fix.

Signed-off-by: Krzysztof Halasa <khc@pm.waw.pl>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
drivers/net/wan/hdlc_fr.c

index 520bb0b1a9a2f6f1c6a74d00d9200631fda23bf5..6d35155c7145185a6ba1685097b49dcebc99b118 100644 (file)
@@ -1008,6 +1008,7 @@ static int fr_rx(struct sk_buff *skb)
                stats->rx_bytes += skb->len;
                if (pvc->state.becn)
                        stats->rx_compressed++;
+               skb->dev = dev;
                netif_rx(skb);
                return NET_RX_SUCCESS;
        } else {