[IPX]: Endian bug in ipxrtr_route_packet()
authorAlexey Dobriyan <adobriyan@gmail.com>
Sun, 11 Jun 2006 01:05:35 +0000 (18:05 -0700)
committerDavid S. Miller <davem@sunset.davemloft.net>
Sun, 18 Jun 2006 04:30:24 +0000 (21:30 -0700)
Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipx/ipx_route.c

index a394c6fe19a26839e07dbed3f7015224d03c1161..bba3431cd9a5b5ad707a32fd534ba1e4d2af8b95 100644 (file)
@@ -238,7 +238,7 @@ int ipxrtr_route_packet(struct sock *sk, struct sockaddr_ipx *usipx,
        }       
 
        /* Apply checksum. Not allowed on 802.3 links. */
        }       
 
        /* Apply checksum. Not allowed on 802.3 links. */
-       if (sk->sk_no_check || intrfc->if_dlink_type == IPX_FRAME_8023)
+       if (sk->sk_no_check || intrfc->if_dlink_type == htons(IPX_FRAME_8023))
                ipx->ipx_checksum = 0xFFFF;
        else
                ipx->ipx_checksum = ipx_cksum(ipx, len + sizeof(struct ipxhdr));
                ipx->ipx_checksum = 0xFFFF;
        else
                ipx->ipx_checksum = ipx_cksum(ipx, len + sizeof(struct ipxhdr));