]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - net/802/hippi.c
Merge git://git.linux-nfs.org/pub/linux/nfs-2.6
[linux-2.6-omap-h63xx.git] / net / 802 / hippi.c
index 579e2ddf5ebe85dfc701b1ded4a1731b97393662..87ffc12b6891826232ebba946f29c101e3b4b2dc 100644 (file)
@@ -23,7 +23,6 @@
 #include <linux/module.h>
 #include <linux/types.h>
 #include <linux/kernel.h>
-#include <linux/sched.h>
 #include <linux/string.h>
 #include <linux/mm.h>
 #include <linux/socket.h>
@@ -39,7 +38,7 @@
 #include <asm/system.h>
 
 /*
- * Create the HIPPI MAC header for an arbitrary protocol layer 
+ * Create the HIPPI MAC header for an arbitrary protocol layer
  *
  * saddr=NULL  means use device source address
  * daddr=NULL  means leave destination address (eg unresolved arp)
@@ -61,7 +60,7 @@ static int hippi_header(struct sk_buff *skb, struct net_device *dev,
         * Due to the stupidity of the little endian byte-order we
         * have to set the fp field this way.
         */
-       hip->fp.fixed           = __constant_htonl(0x04800018);
+       hip->fp.fixed           = htonl(0x04800018);
        hip->fp.d2_size         = htonl(len + 8);
        hip->le.fc              = 0;
        hip->le.double_wide     = 0;    /* only HIPPI 800 for the time being */
@@ -104,8 +103,8 @@ static int hippi_rebuild_header(struct sk_buff *skb)
        /*
         * Only IP is currently supported
         */
-        
-       if(hip->snap.ethertype != __constant_htons(ETH_P_IP)) 
+
+       if(hip->snap.ethertype != htons(ETH_P_IP))
        {
                printk(KERN_DEBUG "%s: unable to resolve type %X addresses.\n",skb->dev->name,ntohs(hip->snap.ethertype));
                return 0;
@@ -122,19 +121,19 @@ static int hippi_rebuild_header(struct sk_buff *skb)
 /*
  *     Determine the packet's protocol ID.
  */
+
 __be16 hippi_type_trans(struct sk_buff *skb, struct net_device *dev)
 {
        struct hippi_hdr *hip;
-       
-       hip = (struct hippi_hdr *) skb->data;
 
        /*
         * This is actually wrong ... question is if we really should
         * set the raw address here.
         */
-        skb->mac.raw = skb->data;
-        skb_pull(skb, HIPPI_HLEN);
+       skb->dev = dev;
+       skb_reset_mac_header(skb);
+       hip = (struct hippi_hdr *)skb_mac_header(skb);
+       skb_pull(skb, HIPPI_HLEN);
 
        /*
         * No fancy promisc stuff here now.
@@ -173,10 +172,10 @@ static int hippi_neigh_setup_dev(struct net_device *dev, struct neigh_parms *p)
 {
        /* Never send broadcast/multicast ARP messages */
        p->mcast_probes = 0;
+
        /* In IPv6 unicast probes are valid even on NBMA,
        * because they are encapsulated in normal IPv6 protocol.
-       * Should be a generic flag. 
+       * Should be a generic flag.
        */
        if (p->tbl->family != AF_INET6)
                p->ucast_probes = 0;
@@ -193,7 +192,7 @@ static void hippi_setup(struct net_device *dev)
        dev->hard_header_parse          = NULL;
        dev->hard_header_cache          = NULL;
        dev->header_cache_update        = NULL;
-       dev->neigh_setup                = hippi_neigh_setup_dev; 
+       dev->neigh_setup                = hippi_neigh_setup_dev;
 
        /*
         * We don't support HIPPI `ARP' for the time being, and probably
@@ -210,9 +209,9 @@ static void hippi_setup(struct net_device *dev)
 
        /*
         * HIPPI doesn't support broadcast+multicast and we only use
-        * static ARP tables. ARP is disabled by hippi_neigh_setup_dev. 
+        * static ARP tables. ARP is disabled by hippi_neigh_setup_dev.
         */
-       dev->flags = 0; 
+       dev->flags = 0;
 }
 
 /**