net: Make sure IPaddr_t is 32 bits in size
authorMatthias Weisser <weisserm@arcor.de>
Sat, 3 Dec 2011 03:29:44 +0000 (03:29 +0000)
committerWolfgang Denk <wd@denx.de>
Tue, 6 Dec 2011 21:15:32 +0000 (22:15 +0100)
When building u-boot as 64 bit application (e.g. sandbox) ulong might be
64 bits in size. This breaks network code as IPaddr_t is 64 bytes in
size then and an IPv4 address is 32 bits in size. This patch makes sure
that IPaddr_t is always 32 bits in size. Also some warnings introduced
by this patch are fixed.

Signed-off-by: Matthias Weisser <weisserm@arcor.de>
Acked-by: Mike Frysinger <vapier@gentoo.org>
include/net.h
net/net.c
net/nfs.c
net/tftp.c

index ad9afbf417d64a1b239a967c30d75e94049dc59a..fa5d525f6d964c3a58d4af0cfd637c805fc19eae 100644 (file)
@@ -33,7 +33,8 @@
 
 #define PKTALIGN       32
 
-typedef ulong          IPaddr_t;
+/* IPv4 addresses are always 32 bits in size */
+typedef u32            IPaddr_t;
 
 
 /**
index d0fe1c4960a2fb024dc5cb704712fb0e61ab785e..045405b7a89742c1d1933f73d5a977cb82d3b270 100644 (file)
--- a/net/net.c
+++ b/net/net.c
@@ -728,7 +728,7 @@ NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
         */
        if (memcmp(ether, NetEtherNullAddr, 6) == 0) {
 
-               debug("sending ARP for %08lx\n", dest);
+               debug("sending ARP for %08x\n", dest);
 
                NetArpWaitPacketIP = dest;
                NetArpWaitPacketMAC = ether;
@@ -751,7 +751,7 @@ NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
                return 1;       /* waiting */
        }
 
-       debug("sending UDP to %08lx/%pM\n", dest, ether);
+       debug("sending UDP to %08x/%pM\n", dest, ether);
 
        pkt = (uchar *)NetTxPacket;
        pkt += NetSetEther(pkt, ether, PROT_IP);
@@ -775,7 +775,7 @@ int PingSend(void)
 
        memcpy(mac, NetEtherNullAddr, 6);
 
-       debug("sending ARP for %08lx\n", NetPingIP);
+       debug("sending ARP for %08x\n", NetPingIP);
 
        NetArpWaitPacketIP = NetPingIP;
        NetArpWaitPacketMAC = mac;
index 5e717e3c6d63221569ce94210afd5197dcd041db..b5b482c3f3cefce41f22e8e596194f4e21b469a3 100644 (file)
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -688,7 +688,7 @@ NfsStart (void)
        }
 
        if (BootFile[0] == '\0') {
-               sprintf (default_filename, "/nfsroot/%02lX%02lX%02lX%02lX.img",
+               sprintf(default_filename, "/nfsroot/%02X%02X%02X%02X.img",
                        NetOurIP & 0xFF,
                        (NetOurIP >>  8) & 0xFF,
                        (NetOurIP >> 16) & 0xFF,
index 49997073872eef56dabd9a294b49f0f907e10b9f..7aa3e23c95d1aba5f79202b7a0f550fd04889754 100644 (file)
@@ -708,7 +708,7 @@ void TftpStart(enum proto_t protocol)
 
        TftpRemoteIP = NetServerIP;
        if (BootFile[0] == '\0') {
-               sprintf(default_filename, "%02lX%02lX%02lX%02lX.img",
+               sprintf(default_filename, "%02X%02X%02X%02X.img",
                        NetOurIP & 0xFF,
                        (NetOurIP >>  8) & 0xFF,
                        (NetOurIP >> 16) & 0xFF,