]> err.no Git - linux-2.6/blobdiff - net/netrom/nr_dev.c
[NETFILTER]: ctnetlink: Fix expectaction mask dumping
[linux-2.6] / net / netrom / nr_dev.c
index 0559cc07ecd8d318d6cb8d46b7eeb4375a847375..509afddae5694a4aae228127c2e379f618bdd40a 100644 (file)
@@ -58,7 +58,7 @@ int nr_rx_ip(struct sk_buff *skb, struct net_device *dev)
 
        /* Spoof incoming device */
        skb->dev      = dev;
-       skb->h.raw    = skb->data;
+       skb->mac.raw  = skb->nh.raw;
        skb->nh.raw   = skb->data;
        skb->pkt_type = PACKET_HOST;
 
@@ -160,10 +160,9 @@ static int nr_close(struct net_device *dev)
 
 static int nr_xmit(struct sk_buff *skb, struct net_device *dev)
 {
-       struct net_device_stats *stats = netdev_priv(dev);
-       unsigned int len;
-
-       len = skb->len;
+       struct nr_private *nr = netdev_priv(dev);
+       struct net_device_stats *stats = &nr->stats;
+       unsigned int len = skb->len;
 
        if (!nr_route_frame(skb, NULL)) {
                kfree_skb(skb);
@@ -179,7 +178,9 @@ static int nr_xmit(struct sk_buff *skb, struct net_device *dev)
 
 static struct net_device_stats *nr_get_stats(struct net_device *dev)
 {
-       return netdev_priv(dev);
+       struct nr_private *nr = netdev_priv(dev);
+
+       return &nr->stats;
 }
 
 void nr_setup(struct net_device *dev)
@@ -198,7 +199,7 @@ void nr_setup(struct net_device *dev)
        dev->set_mac_address    = nr_set_mac_address;
 
        /* New-style flags. */
-       dev->flags              = 0;
+       dev->flags              = IFF_NOARP;
 
        dev->get_stats          = nr_get_stats;
 }