]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - drivers/net/wan/syncppp.c
[NET]: Make packet reception network namespace safe
[linux-2.6-omap-h63xx.git] / drivers / net / wan / syncppp.c
index 67fc67cfd452562768adb8b09bfb369ca0f1e360..5c71af6ea3a50ad99d91845fbce3247cbebdf7d8 100644 (file)
@@ -51,6 +51,7 @@
 #include <linux/spinlock.h>
 #include <linux/rcupdate.h>
 
+#include <net/net_namespace.h>
 #include <net/syncppp.h>
 
 #include <asm/byteorder.h>
@@ -1445,6 +1446,11 @@ static void sppp_print_bytes (u_char *p, u16 len)
 
 static int sppp_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *p, struct net_device *orig_dev)
 {
+       if (dev->nd_net != &init_net) {
+               kfree_skb(skb);
+               return 0;
+       }
+
        if ((skb = skb_share_check(skb, GFP_ATOMIC)) == NULL)
                return NET_RX_DROP;
        sppp_input(dev,skb);