diff mbox

[U-Boot,09/28] net: cosmetic: Un-typedef variables in net

Message ID 1327020811-1538-10-git-send-email-joe.hershberger@ni.com
State Superseded
Delegated to: Joe Hershberger
Headers show

Commit Message

Joe Hershberger Jan. 20, 2012, 12:53 a.m. UTC
Un-typedef IP_t, Ethernet_t, VLAN_Ethernet_t, ARP_t, ICMP_t
Rename IP header related things to IP_UDP
The existing definition of IP_t includes UDP header, so name it to
accurately describe the structure

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Wolfgang Denk <wd@denx.de>
---
 arch/powerpc/cpu/mpc8260/ether_fcc.c |   10 ++--
 drivers/net/netconsole.c             |    4 +-
 include/net.h                        |   30 ++++++-----
 net/arp.c                            |   12 ++--
 net/arp.h                            |    2 +-
 net/bootp.c                          |    8 ++--
 net/bootp.h                          |    2 +-
 net/cdp.c                            |    4 +-
 net/dns.c                            |    2 +-
 net/net.c                            |   87 +++++++++++++++++----------------
 net/nfs.c                            |    2 +-
 net/ping.c                           |   18 ++++----
 net/ping.h                           |    2 +-
 net/rarp.c                           |   10 ++--
 net/rarp.h                           |    2 +-
 net/sntp.c                           |    2 +-
 net/tftp.c                           |    2 +-
 17 files changed, 102 insertions(+), 97 deletions(-)

Comments

Mike Frysinger Feb. 3, 2012, 12:05 p.m. UTC | #1
On Thursday 19 January 2012 19:53:12 Joe Hershberger wrote:
> Un-typedef IP_t, Ethernet_t, VLAN_Ethernet_t, ARP_t, ICMP_t

i'm not sure about this.  i don't mind the typedefs myself and they have the 
advantage of already being done ... let's see what Wolfgang prefers.

> The existing definition of IP_t includes UDP header, so name it to
> accurately describe the structure

i feel like we should split it out.  drop the UDP parts from IP_t and add a 
new IP_UDP_t.  much of the code operates on UDP packages, but not all (such as 
the main NetReceive func).
-mike
Joe Hershberger Feb. 9, 2012, 11:03 p.m. UTC | #2
Hi Mike,

On Fri, Feb 3, 2012 at 6:05 AM, Mike Frysinger <vapier@gentoo.org> wrote:
> On Thursday 19 January 2012 19:53:12 Joe Hershberger wrote:
>> Un-typedef IP_t, Ethernet_t, VLAN_Ethernet_t, ARP_t, ICMP_t
>
> i'm not sure about this.  i don't mind the typedefs myself and they have the
> advantage of already being done ... let's see what Wolfgang prefers.

Wolfgang was clearly against typedef'ed structs when I asked him in
October of last year.

On Thu, Oct 13, 2011 at 3:36 PM, Wolfgang Denk <wd@denx.de> wrote:
> In message <CANr=Z=bmm64Qxv+Zpc=GShY7c2KapAgh9xm-cq79TM1oQ76V5A@mail.gmail.com> you wrote:
>>
>> WARNING:NEW_TYPEDEFS: do not add new typedefs
>> This seems rather limiting... I'm not sure why even Linux would want
>> this, at least when it applies to typedefs of structs.  It makes sense
>> if it's a new typedef for int or something.
>
> See the CodingStyle, start reading at "It's a _mistake_ to use typedef
> for structures and pointers."

That's why I didn't leave them to be complained about by checkpatch.

-Joe
diff mbox

Patch

diff --git a/arch/powerpc/cpu/mpc8260/ether_fcc.c b/arch/powerpc/cpu/mpc8260/ether_fcc.c
index 879ec0e..f59d9e1 100644
--- a/arch/powerpc/cpu/mpc8260/ether_fcc.c
+++ b/arch/powerpc/cpu/mpc8260/ether_fcc.c
@@ -1049,11 +1049,11 @@  eth_loopback_test (void)
 					}
 					else {
 						ushort datlen = bdp->cbd_datlen;
-						Ethernet_t *ehp;
+						struct Ethernet_t *ehp;
 						ushort prot;
 						int ours, tb, n, nbytes;
 
-						ehp = (Ethernet_t *) \
+						ehp = (struct Ethernet_t *) \
 							&ecp->rxbufs[i][0];
 
 						ours = memcmp (ehp->et_src, \
@@ -1064,9 +1064,9 @@  eth_loopback_test (void)
 						n = prot & 0x7fff;
 
 						nbytes = ELBT_BUFSZ - \
-							offsetof (Ethernet_t, \
-								et_dsap) - \
-							ELBT_CRCSZ;
+							offsetof(
+							struct Ethernet_t, \
+							et_dsap) - ELBT_CRCSZ;
 
 						/* check the frame is correct */
 						if (datlen != ELBT_BUFSZ)
diff --git a/drivers/net/netconsole.c b/drivers/net/netconsole.c
index 7acd5b0..ba02fd7 100644
--- a/drivers/net/netconsole.c
+++ b/drivers/net/netconsole.c
@@ -69,7 +69,7 @@  void NcStart(void)
 		/* send arp request */
 		uchar *pkt;
 		NetSetHandler(nc_wait_arp_handler);
-		pkt = (uchar *)NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE;
+		pkt = (uchar *)NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE;
 		memcpy(pkt, output_packet, output_packet_len);
 		NetSendUDPPacket(nc_ether, nc_ip, nc_port, nc_port,
 			output_packet_len);
@@ -131,7 +131,7 @@  static void nc_send_packet(const char *buf, int len)
 			return;
 		inited = 1;
 	}
-	pkt = (uchar *)NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE;
+	pkt = (uchar *)NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE;
 	memcpy(pkt, buf, len);
 	ether = nc_ether;
 	ip = nc_ip;
diff --git a/include/net.h b/include/net.h
index 2d00233..9de1181 100644
--- a/include/net.h
+++ b/include/net.h
@@ -155,7 +155,7 @@  u32 ether_crc(size_t len, unsigned char const *p);
 /*
  *	Ethernet header
  */
-typedef struct {
+struct Ethernet_t {
 	uchar		et_dest[6];	/* Destination node		*/
 	uchar		et_src[6];	/* Source node			*/
 	ushort		et_protlen;	/* Protocol or length		*/
@@ -166,7 +166,7 @@  typedef struct {
 	uchar		et_snap2;
 	uchar		et_snap3;
 	ushort		et_prot;	/* 802 protocol			*/
-} Ethernet_t;
+};
 
 #define ETHER_HDR_SIZE	14		/* Ethernet header size		*/
 #define E802_HDR_SIZE	22		/* 802 ethernet header size	*/
@@ -174,13 +174,13 @@  typedef struct {
 /*
  *	Ethernet header
  */
-typedef struct {
+struct VLAN_Ethernet_t {
 	uchar		vet_dest[6];	/* Destination node		*/
 	uchar		vet_src[6];	/* Source node			*/
 	ushort		vet_vlan_type;	/* PROT_VLAN			*/
 	ushort		vet_tag;	/* TAG of VLAN			*/
 	ushort		vet_type;	/* protocol type		*/
-} VLAN_Ethernet_t;
+};
 
 #define VLAN_ETHER_HDR_SIZE	18	/* VLAN Ethernet header size	*/
 
@@ -193,9 +193,9 @@  typedef struct {
 #define IPPROTO_UDP	17	/* User Datagram Protocol		*/
 
 /*
- *	Internet Protocol (IP) header.
+ *	Internet Protocol (IP) + UDP header.
  */
-typedef struct {
+struct IP_UDP_t {
 	uchar		ip_hl_v;	/* header length and version	*/
 	uchar		ip_tos;		/* type of service		*/
 	ushort		ip_len;		/* total length			*/
@@ -210,7 +210,7 @@  typedef struct {
 	ushort		udp_dst;	/* UDP destination port		*/
 	ushort		udp_len;	/* Length of UDP packet		*/
 	ushort		udp_xsum;	/* Checksum			*/
-} IP_t;
+};
 
 #define IP_OFFS		0x1fff /* ip offset *= 8 */
 #define IP_FLAGS	0xe000 /* first 3 bits */
@@ -218,15 +218,15 @@  typedef struct {
 #define IP_FLAGS_DFRAG	0x4000 /* don't fragments */
 #define IP_FLAGS_MFRAG	0x2000 /* more fragments */
 
-#define IP_HDR_SIZE_NO_UDP	(sizeof(IP_t) - 8)
-#define IP_HDR_SIZE		(sizeof(IP_t))
+#define UDP_HDR_SIZE		(sizeof(ushort) * 4)
+#define IP_HDR_SIZE		(sizeof(struct IP_UDP_t) - UDP_HDR_SIZE)
+#define IP_UDP_HDR_SIZE		(sizeof(struct IP_UDP_t))
 
 
 /*
  *	Address Resolution Protocol (ARP) header.
  */
-typedef struct
-{
+struct ARP_t {
 	ushort		ar_hrd;		/* Format of hardware address	*/
 #   define ARP_ETHER	    1		/* Ethernet  hardware address	*/
 	ushort		ar_pro;		/* Format of protocol address	*/
@@ -251,7 +251,7 @@  typedef struct
 	uchar		ar_tha[];	/* Target hardware address	*/
 	uchar		ar_tpa[];	/* Target protocol address	*/
 #endif /* 0 */
-} ARP_t;
+};
 
 #define ARP_HDR_SIZE	(8+20)		/* Size assuming ethernet	*/
 
@@ -270,7 +270,7 @@  typedef struct
 /* Codes for NOT_REACH */
 #define ICMP_NOT_REACH_PORT	3	/* Port unreachable		*/
 
-typedef struct icmphdr {
+struct ICMP_t {
 	uchar		type;
 	uchar		code;
 	ushort		checksum;
@@ -286,8 +286,10 @@  typedef struct icmphdr {
 		} frag;
 		uchar data[0];
 	} un;
-} ICMP_t;
+};
 
+#define ICMP_HDR_SIZE		(sizeof(struct ICMP_t))
+#define IP_ICMP_HDR_SIZE	(IP_HDR_SIZE + ICMP_HDR_SIZE)
 
 /*
  * Maximum packet size; used to allocate packet storage.
diff --git a/net/arp.c b/net/arp.c
index f75217c..96ffb85 100644
--- a/net/arp.c
+++ b/net/arp.c
@@ -51,7 +51,7 @@  void ArpInit(void)
 void ArpRequest(void)
 {
 	uchar *pkt;
-	ARP_t *arp;
+	struct ARP_t *arp;
 
 	debug("ARP broadcast %d\n", NetArpWaitTry);
 
@@ -59,7 +59,7 @@  void ArpRequest(void)
 
 	pkt += NetSetEther(pkt, NetBcastAddr, PROT_ARP);
 
-	arp = (ARP_t *) pkt;
+	arp = (struct ARP_t *) pkt;
 
 	arp->ar_hrd = htons(ARP_ETHER);
 	arp->ar_pro = htons(PROT_IP);
@@ -113,9 +113,9 @@  void ArpTimeoutCheck(void)
 	}
 }
 
-void ArpReceive(Ethernet_t *et, IP_t *ip, int len)
+void ArpReceive(struct Ethernet_t *et, struct IP_UDP_t *ip, int len)
 {
-	ARP_t *arp;
+	struct ARP_t *arp;
 	IPaddr_t tmp;
 	uchar *pkt;
 
@@ -130,7 +130,7 @@  void ArpReceive(Ethernet_t *et, IP_t *ip, int len)
 	 */
 	debug("Got ARP\n");
 
-	arp = (ARP_t *)ip;
+	arp = (struct ARP_t *)ip;
 	if (len < ARP_HDR_SIZE) {
 		printf("bad length %d < %d\n", len, ARP_HDR_SIZE);
 		return;
@@ -193,7 +193,7 @@  void ArpReceive(Ethernet_t *et, IP_t *ip, int len)
 			NetGetHandler()(0, 0, 0, 0, 0);
 #endif
 			/* modify header, and transmit it */
-			memcpy(((Ethernet_t *)NetArpWaitTxPacket)->
+			memcpy(((struct Ethernet_t *)NetArpWaitTxPacket)->
 				et_dest, NetArpWaitPacketMAC, 6);
 			(void) eth_send(NetArpWaitTxPacket,
 					NetArpWaitTxPacketSize);
diff --git a/net/arp.h b/net/arp.h
index 09c763d..d9ce03d 100644
--- a/net/arp.h
+++ b/net/arp.h
@@ -25,6 +25,6 @@  extern int NetArpWaitTry;
 void ArpInit(void);
 void ArpRequest(void);
 void ArpTimeoutCheck(void);
-void ArpReceive(Ethernet_t *et, IP_t *ip, int len);
+void ArpReceive(struct Ethernet_t *et, struct IP_UDP_t *ip, int len);
 
 #endif /* __ARP_H__ */
diff --git a/net/bootp.c b/net/bootp.c
index 9824cd1..e95419f 100644
--- a/net/bootp.c
+++ b/net/bootp.c
@@ -105,7 +105,7 @@  static void BootpCopyNetParams(struct Bootp_t *bp)
 	NetCopyIP(&tmp_ip, &bp->bp_siaddr);
 	if (tmp_ip != 0)
 		NetCopyIP(&NetServerIP, &bp->bp_siaddr);
-	memcpy(NetServerEther, ((Ethernet_t *)NetRxPacket)->et_src, 6);
+	memcpy(NetServerEther, ((struct Ethernet_t *)NetRxPacket)->et_src, 6);
 #endif
 	if (strlen(bp->bp_file) > 0)
 		copy_filename(BootFile, bp->bp_file, sizeof(BootFile));
@@ -621,8 +621,8 @@  BootpRequest(void)
 	 */
 	/* NetSetIP(pkt, 0xFFFFFFFFL, PORT_BOOTPS, PORT_BOOTPC,
 		sizeof (struct Bootp_t)); */
-	iphdr = pkt;	/* We need this later for NetSetIP() */
-	pkt += IP_HDR_SIZE;
+	iphdr = pkt;	/* We need this later for NetSetUDPHeader() */
+	pkt += IP_UDP_HDR_SIZE;
 
 	bp = (struct Bootp_t *)pkt;
 	bp->bp_op = OP_BOOTREQUEST;
@@ -807,7 +807,7 @@  static void DhcpSendRequestPkt(struct Bootp_t *bp_offer)
 	pkt += NetSetEther(pkt, NetBcastAddr, PROT_IP);
 
 	iphdr = pkt;	/* We'll need this later to set proper pkt size */
-	pkt += IP_HDR_SIZE;
+	pkt += IP_UDP_HDR_SIZE;
 
 	bp = (struct Bootp_t *)pkt;
 	bp->bp_op = OP_BOOTREQUEST;
diff --git a/net/bootp.h b/net/bootp.h
index bf4e875..1cf9a02 100644
--- a/net/bootp.h
+++ b/net/bootp.h
@@ -52,7 +52,7 @@  struct Bootp_t {
 };
 
 #define BOOTP_HDR_SIZE	sizeof(struct Bootp_t)
-#define BOOTP_SIZE	(ETHER_HDR_SIZE + IP_HDR_SIZE + BOOTP_HDR_SIZE)
+#define BOOTP_SIZE	(ETHER_HDR_SIZE + IP_UDP_HDR_SIZE + BOOTP_HDR_SIZE)
 
 /**********************************************************************/
 /*
diff --git a/net/cdp.c b/net/cdp.c
index c5e54b2..d617f18 100644
--- a/net/cdp.c
+++ b/net/cdp.c
@@ -108,7 +108,7 @@  CDPSendTrigger(void)
 	uchar *pkt;
 	ushort *s;
 	ushort *cp;
-	Ethernet_t *et;
+	struct Ethernet_t *et;
 	int len;
 	ushort chksum;
 #if	defined(CONFIG_CDP_DEVICE_ID) || defined(CONFIG_CDP_PORT_ID)   || \
@@ -117,7 +117,7 @@  CDPSendTrigger(void)
 #endif
 
 	pkt = NetTxPacket;
-	et = (Ethernet_t *)pkt;
+	et = (struct Ethernet_t *)pkt;
 
 	/* NOTE: trigger sent not on any VLAN */
 
diff --git a/net/dns.c b/net/dns.c
index 7a3f1f9..cc7ed51 100644
--- a/net/dns.c
+++ b/net/dns.c
@@ -45,7 +45,7 @@  DnsSend(void)
 	enum dns_query_type qtype = DNS_A_RECORD;
 
 	name = NetDNSResolve;
-	pkt = p = (uchar *)(NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE);
+	pkt = p = (uchar *)(NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE);
 
 	/* Prepare DNS packet header */
 	header           = (struct header *) pkt;
diff --git a/net/net.c b/net/net.c
index fdc1ebe..023802d 100644
--- a/net/net.c
+++ b/net/net.c
@@ -625,12 +625,13 @@  NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
 		pkt += NetSetEther(pkt, NetArpWaitPacketMAC, PROT_IP);
 
 		NetSetIP(pkt, dest, dport, sport, len);
-		memcpy(pkt + IP_HDR_SIZE, (uchar *)NetTxPacket +
-		       (pkt - (uchar *)NetArpWaitTxPacket) + IP_HDR_SIZE, len);
+		memcpy(pkt + IP_UDP_HDR_SIZE, (uchar *)NetTxPacket +
+		       (pkt - (uchar *)NetArpWaitTxPacket) +
+		       IP_UDP_HDR_SIZE, len);
 
 		/* size of the waiting packet */
 		NetArpWaitTxPacketSize = (pkt - NetArpWaitTxPacket) +
-			IP_HDR_SIZE + len;
+			IP_UDP_HDR_SIZE + len;
 
 		/* and do the ARP request */
 		NetArpWaitTry = 1;
@@ -644,7 +645,7 @@  NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
 	pkt = (uchar *)NetTxPacket;
 	pkt += NetSetEther(pkt, ether, PROT_IP);
 	NetSetIP(pkt, dest, dport, sport, len);
-	(void) eth_send(NetTxPacket, (pkt - NetTxPacket) + IP_HDR_SIZE + len);
+	eth_send(NetTxPacket, (pkt - NetTxPacket) + IP_UDP_HDR_SIZE + len);
 
 	return 0;	/* transmitted */
 }
@@ -668,7 +669,7 @@  NetSendUDPPacket(uchar *ether, IPaddr_t dest, int dport, int sport, int len)
 static struct rpc_t rpc_specimen;
 #define IP_PKTSIZE (CONFIG_NET_MAXDEFRAG + sizeof(rpc_specimen.u.reply))
 
-#define IP_MAXUDP (IP_PKTSIZE - IP_HDR_SIZE_NO_UDP)
+#define IP_MAXUDP (IP_PKTSIZE - IP_HDR_SIZE)
 
 /*
  * this is the packet being assembled, either data or frag control.
@@ -682,22 +683,22 @@  struct hole {
 	u16 unused;
 };
 
-static IP_t *__NetDefragment(IP_t *ip, int *lenp)
+static struct IP_UDP_t *__NetDefragment(struct IP_UDP_t *ip, int *lenp)
 {
 	static uchar pkt_buff[IP_PKTSIZE] __attribute__((aligned(PKTALIGN)));
 	static u16 first_hole, total_len;
 	struct hole *payload, *thisfrag, *h, *newh;
-	IP_t *localip = (IP_t *)pkt_buff;
+	struct IP_UDP_t *localip = (struct IP_UDP_t *)pkt_buff;
 	uchar *indata = (uchar *)ip;
 	int offset8, start, len, done = 0;
 	u16 ip_off = ntohs(ip->ip_off);
 
 	/* payload starts after IP header, this fragment is in there */
-	payload = (struct hole *)(pkt_buff + IP_HDR_SIZE_NO_UDP);
+	payload = (struct hole *)(pkt_buff + IP_HDR_SIZE);
 	offset8 =  (ip_off & IP_OFFS);
 	thisfrag = payload + offset8;
 	start = offset8 * 8;
-	len = ntohs(ip->ip_len) - IP_HDR_SIZE_NO_UDP;
+	len = ntohs(ip->ip_len) - IP_HDR_SIZE;
 
 	if (start + len > IP_MAXUDP) /* fragment extends too far */
 		return NULL;
@@ -710,7 +711,7 @@  static IP_t *__NetDefragment(IP_t *ip, int *lenp)
 		payload[0].prev_hole = 0;
 		first_hole = 0;
 		/* any IP header will work, copy the first we received */
-		memcpy(localip, ip, IP_HDR_SIZE_NO_UDP);
+		memcpy(localip, ip, IP_HDR_SIZE);
 	}
 
 	/*
@@ -793,16 +794,16 @@  static IP_t *__NetDefragment(IP_t *ip, int *lenp)
 	}
 
 	/* finally copy this fragment and possibly return whole packet */
-	memcpy((uchar *)thisfrag, indata + IP_HDR_SIZE_NO_UDP, len);
+	memcpy((uchar *)thisfrag, indata + IP_HDR_SIZE, len);
 	if (!done)
 		return NULL;
 
 	localip->ip_len = htons(total_len);
-	*lenp = total_len + IP_HDR_SIZE_NO_UDP;
+	*lenp = total_len + IP_HDR_SIZE;
 	return localip;
 }
 
-static inline IP_t *NetDefragment(IP_t *ip, int *lenp)
+static inline struct IP_UDP_t *NetDefragment(struct IP_UDP_t *ip, int *lenp)
 {
 	u16 ip_off = ntohs(ip->ip_off);
 	if (!(ip_off & (IP_OFFS | IP_FLAGS_MFRAG)))
@@ -812,7 +813,7 @@  static inline IP_t *NetDefragment(IP_t *ip, int *lenp)
 
 #else /* !CONFIG_IP_DEFRAG */
 
-static inline IP_t *NetDefragment(IP_t *ip, int *lenp)
+static inline struct IP_UDP_t *NetDefragment(struct IP_UDP_t *ip, int *lenp)
 {
 	u16 ip_off = ntohs(ip->ip_off);
 	if (!(ip_off & (IP_OFFS | IP_FLAGS_MFRAG)))
@@ -827,9 +828,10 @@  static inline IP_t *NetDefragment(IP_t *ip, int *lenp)
  *
  * @parma ip	IP packet containing the ICMP
  */
-static void receive_icmp(IP_t *ip, int len, IPaddr_t src_ip, Ethernet_t *et)
+static void receive_icmp(struct IP_UDP_t *ip, int len,
+			IPaddr_t src_ip, struct Ethernet_t *et)
 {
-	ICMP_t *icmph = (ICMP_t *)&ip->udp_src;
+	struct ICMP_t *icmph = (struct ICMP_t *)&(ip->udp_src);
 
 	switch (icmph->type) {
 	case ICMP_REDIRECT:
@@ -855,8 +857,8 @@  static void receive_icmp(IP_t *ip, int len, IPaddr_t src_ip, Ethernet_t *et)
 void
 NetReceive(volatile uchar *inpkt, int len)
 {
-	Ethernet_t *et;
-	IP_t	*ip;
+	struct Ethernet_t *et;
+	struct IP_UDP_t	*ip;
 	IPaddr_t tmp;
 	IPaddr_t src_ip;
 	int	x;
@@ -869,7 +871,7 @@  NetReceive(volatile uchar *inpkt, int len)
 
 	NetRxPacket = (uchar *)inpkt;
 	NetRxPacketLen = len;
-	et = (Ethernet_t *)NetRxPacket;
+	et = (struct Ethernet_t *)NetRxPacket;
 
 	/* too small packet? */
 	if (len < ETHER_HDR_SIZE)
@@ -904,15 +906,15 @@  NetReceive(volatile uchar *inpkt, int len)
 		 */
 		x = ntohs(et->et_prot);
 
-		ip = (IP_t *)(NetRxPacket + E802_HDR_SIZE);
+		ip = (struct IP_UDP_t *)(NetRxPacket + E802_HDR_SIZE);
 		len -= E802_HDR_SIZE;
 
 	} else if (x != PROT_VLAN) {	/* normal packet */
-		ip = (IP_t *)(NetRxPacket + ETHER_HDR_SIZE);
+		ip = (struct IP_UDP_t *)(NetRxPacket + ETHER_HDR_SIZE);
 		len -= ETHER_HDR_SIZE;
 
 	} else {			/* VLAN packet */
-		VLAN_Ethernet_t *vet = (VLAN_Ethernet_t *)et;
+		struct VLAN_Ethernet_t *vet = (struct VLAN_Ethernet_t *)et;
 
 		debug("VLAN packet received\n");
 
@@ -932,7 +934,7 @@  NetReceive(volatile uchar *inpkt, int len)
 		vlanid = cti & VLAN_IDMASK;
 		x = ntohs(vet->vet_type);
 
-		ip = (IP_t *)(NetRxPacket + VLAN_ETHER_HDR_SIZE);
+		ip = (struct IP_UDP_t *)(NetRxPacket + VLAN_ETHER_HDR_SIZE);
 		len -= VLAN_ETHER_HDR_SIZE;
 	}
 
@@ -967,8 +969,9 @@  NetReceive(volatile uchar *inpkt, int len)
 	case PROT_IP:
 		debug("Got IP\n");
 		/* Before we start poking the header, make sure it is there */
-		if (len < IP_HDR_SIZE) {
-			debug("len bad %d < %lu\n", len, (ulong)IP_HDR_SIZE);
+		if (len < IP_UDP_HDR_SIZE) {
+			debug("len bad %d < %lu\n", len,
+				(ulong)IP_UDP_HDR_SIZE);
 			return;
 		}
 		/* Check the packet length */
@@ -986,7 +989,7 @@  NetReceive(volatile uchar *inpkt, int len)
 		if ((ip->ip_hl_v & 0x0f) > 0x05)
 			return;
 		/* Check the Checksum of the header */
-		if (!NetCksumOk((uchar *)ip, IP_HDR_SIZE_NO_UDP / 2)) {
+		if (!NetCksumOk((uchar *)ip, IP_HDR_SIZE / 2)) {
 			puts("checksum bad\n");
 			return;
 		}
@@ -1080,19 +1083,19 @@  NetReceive(volatile uchar *inpkt, int len)
 
 
 #ifdef CONFIG_NETCONSOLE
-		nc_input_packet((uchar *)ip + IP_HDR_SIZE,
-						ntohs(ip->udp_dst),
-						ntohs(ip->udp_src),
-						ntohs(ip->udp_len) - 8);
+		nc_input_packet((uchar *)ip + IP_UDP_HDR_SIZE,
+					ntohs(ip->udp_dst),
+					ntohs(ip->udp_src),
+					ntohs(ip->udp_len) - UDP_HDR_SIZE);
 #endif
 		/*
 		 *	IP header OK.  Pass the packet to the current handler.
 		 */
-		(*packetHandler)((uchar *)ip + IP_HDR_SIZE,
-						ntohs(ip->udp_dst),
-						src_ip,
-						ntohs(ip->udp_src),
-						ntohs(ip->udp_len) - 8);
+		(*packetHandler)((uchar *)ip + IP_UDP_HDR_SIZE,
+					ntohs(ip->udp_dst),
+					src_ip,
+					ntohs(ip->udp_src),
+					ntohs(ip->udp_len) - UDP_HDR_SIZE);
 		break;
 	}
 }
@@ -1221,7 +1224,7 @@  NetEthHdrSize(void)
 int
 NetSetEther(uchar *xet, uchar * addr, uint prot)
 {
-	Ethernet_t *et = (Ethernet_t *)xet;
+	struct Ethernet_t *et = (struct Ethernet_t *)xet;
 	ushort myvlanid;
 
 	myvlanid = ntohs(NetOurVLAN);
@@ -1234,7 +1237,7 @@  NetSetEther(uchar *xet, uchar * addr, uint prot)
 		et->et_protlen = htons(prot);
 		return ETHER_HDR_SIZE;
 	} else {
-		VLAN_Ethernet_t *vet = (VLAN_Ethernet_t *)xet;
+		struct VLAN_Ethernet_t *vet = (struct VLAN_Ethernet_t *)xet;
 
 		vet->vet_vlan_type = htons(PROT_VLAN);
 		vet->vet_tag = htons((0 << 5) | (myvlanid & VLAN_IDMASK));
@@ -1246,7 +1249,7 @@  NetSetEther(uchar *xet, uchar * addr, uint prot)
 void
 NetSetIP(uchar *xip, IPaddr_t dest, int dport, int sport, int len)
 {
-	IP_t *ip = (IP_t *)xip;
+	struct IP_UDP_t *ip = (struct IP_UDP_t *)xip;
 
 	/*
 	 *	If the data is an odd number of bytes, zero the
@@ -1254,7 +1257,7 @@  NetSetIP(uchar *xip, IPaddr_t dest, int dport, int sport, int len)
 	 *	will work.
 	 */
 	if (len & 1)
-		xip[IP_HDR_SIZE + len] = 0;
+		xip[IP_UDP_HDR_SIZE + len] = 0;
 
 	/*
 	 *	Construct an IP and UDP header.
@@ -1263,7 +1266,7 @@  NetSetIP(uchar *xip, IPaddr_t dest, int dport, int sport, int len)
 	/* IP_HDR_SIZE / 4 (not including UDP) */
 	ip->ip_hl_v  = 0x45;
 	ip->ip_tos   = 0;
-	ip->ip_len   = htons(IP_HDR_SIZE + len);
+	ip->ip_len   = htons(IP_UDP_HDR_SIZE + len);
 	ip->ip_id    = htons(NetIPID++);
 	ip->ip_off   = htons(IP_FLAGS_DFRAG);	/* Don't fragment */
 	ip->ip_ttl   = 255;
@@ -1275,9 +1278,9 @@  NetSetIP(uchar *xip, IPaddr_t dest, int dport, int sport, int len)
 	NetCopyIP((void *)&ip->ip_dst, &dest);
 	ip->udp_src  = htons(sport);
 	ip->udp_dst  = htons(dport);
-	ip->udp_len  = htons(8 + len);
+	ip->udp_len  = htons(UDP_HDR_SIZE + len);
 	ip->udp_xsum = 0;
-	ip->ip_sum   = ~NetCksum((uchar *)ip, IP_HDR_SIZE_NO_UDP / 2);
+	ip->ip_sum   = ~NetCksum((uchar *)ip, IP_HDR_SIZE / 2);
 }
 
 void copy_filename(char *dst, const char *src, int size)
diff --git a/net/nfs.c b/net/nfs.c
index 54f56c4..b6188fe 100644
--- a/net/nfs.c
+++ b/net/nfs.c
@@ -189,7 +189,7 @@  rpc_req(int rpc_prog, int rpc_proc, uint32_t *data, int datalen)
 
 	pktlen = (char *)p + datalen*sizeof(uint32_t) - (char *)&pkt;
 
-	memcpy((char *)NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE,
+	memcpy((char *)NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE,
 		(char *)&pkt, pktlen);
 
 	if (rpc_prog == PROG_PORTMAP)
diff --git a/net/ping.c b/net/ping.c
index 4a66b8d..34e287c 100644
--- a/net/ping.c
+++ b/net/ping.c
@@ -19,7 +19,7 @@  IPaddr_t NetPingIP;
 static int PingSend(void)
 {
 	static uchar mac[6];
-	IP_t *ip;
+	struct IP_UDP_t *ip;
 	ushort *s;
 	uchar *pkt;
 
@@ -35,7 +35,7 @@  static int PingSend(void)
 	pkt = NetArpWaitTxPacket;
 	pkt += NetSetEther(pkt, mac, PROT_IP);
 
-	ip = (IP_t *)pkt;
+	ip = (struct IP_UDP_t *)pkt;
 
 	/*
 	 * Construct an IP and ICMP header.
@@ -44,7 +44,7 @@  static int PingSend(void)
 	/* IP_HDR_SIZE / 4 (not including UDP) */
 	ip->ip_hl_v  = 0x45;
 	ip->ip_tos   = 0;
-	ip->ip_len   = htons(IP_HDR_SIZE_NO_UDP + 8);
+	ip->ip_len   = htons(IP_HDR_SIZE + 8);
 	ip->ip_id    = htons(NetIPID++);
 	ip->ip_off   = htons(IP_FLAGS_DFRAG);	/* Don't fragment */
 	ip->ip_ttl   = 255;
@@ -54,7 +54,7 @@  static int PingSend(void)
 	NetCopyIP((void *)&ip->ip_src, &NetOurIP);
 	/* - "" - */
 	NetCopyIP((void *)&ip->ip_dst, &NetPingIP);
-	ip->ip_sum   = ~NetCksum((uchar *)ip, IP_HDR_SIZE_NO_UDP / 2);
+	ip->ip_sum   = ~NetCksum((uchar *)ip, IP_HDR_SIZE / 2);
 
 	s = &ip->udp_src;		/* XXX ICMP starts here */
 	s[0] = htons(0x0800);		/* echo-request, code */
@@ -65,7 +65,7 @@  static int PingSend(void)
 
 	/* size of the waiting packet */
 	NetArpWaitTxPacketSize =
-		(pkt - NetArpWaitTxPacket) + IP_HDR_SIZE_NO_UDP + 8;
+		(pkt - NetArpWaitTxPacket) + IP_HDR_SIZE + 8;
 
 	/* and do the ARP request */
 	NetArpWaitTry = 1;
@@ -101,9 +101,9 @@  PingStart(void)
 	PingSend();
 }
 
-void PingReceive(Ethernet_t *et, IP_t *ip, int len)
+void PingReceive(struct Ethernet_t *et, struct IP_UDP_t *ip, int len)
 {
-	ICMP_t *icmph = (ICMP_t *)&(ip->udp_src);
+	struct ICMP_t *icmph = (struct ICMP_t *)&(ip->udp_src);
 	IPaddr_t src_ip;
 
 	switch (icmph->type) {
@@ -128,12 +128,12 @@  void PingReceive(Ethernet_t *et, IP_t *ip, int len)
 		NetCopyIP((void *)&ip->ip_dst, &ip->ip_src);
 		NetCopyIP((void *)&ip->ip_src, &NetOurIP);
 		ip->ip_sum = ~NetCksum((uchar *)ip,
-				       IP_HDR_SIZE_NO_UDP >> 1);
+				       IP_HDR_SIZE >> 1);
 
 		icmph->type = ICMP_ECHO_REPLY;
 		icmph->checksum = 0;
 		icmph->checksum = ~NetCksum((uchar *)icmph,
-			(len - IP_HDR_SIZE_NO_UDP) >> 1);
+			(len - IP_HDR_SIZE) >> 1);
 		(void) eth_send((uchar *)et,
 				ETHER_HDR_SIZE + len);
 		return;
diff --git a/net/ping.h b/net/ping.h
index 56aad43..4671909 100644
--- a/net/ping.h
+++ b/net/ping.h
@@ -15,6 +15,6 @@ 
 #include <net.h>
 
 void PingStart(void);
-void PingReceive(Ethernet_t *et, IP_t *ip, int len);
+void PingReceive(struct Ethernet_t *et, struct IP_UDP_t *ip, int len);
 
 #endif /* __PING_H__ */
diff --git a/net/rarp.c b/net/rarp.c
index 761560c..305b0a4 100644
--- a/net/rarp.c
+++ b/net/rarp.c
@@ -42,12 +42,12 @@  int		RarpTry;
  *	Handle a RARP received packet.
  */
 void
-RarpReceive(IP_t *ip, unsigned len)
+RarpReceive(struct IP_UDP_t *ip, unsigned len)
 {
-	ARP_t *arp;
+	struct ARP_t *arp;
 
 	debug("Got RARP\n");
-	arp = (ARP_t *)ip;
+	arp = (struct ARP_t *)ip;
 	if (len < ARP_HDR_SIZE) {
 		printf("bad length %d < %d\n", len, ARP_HDR_SIZE);
 		return;
@@ -90,14 +90,14 @@  void
 RarpRequest(void)
 {
 	uchar *pkt;
-	ARP_t *rarp;
+	struct ARP_t *rarp;
 
 	printf("RARP broadcast %d\n", ++RarpTry);
 	pkt = NetTxPacket;
 
 	pkt += NetSetEther(pkt, NetBcastAddr, PROT_RARP);
 
-	rarp = (ARP_t *)pkt;
+	rarp = (struct ARP_t *)pkt;
 
 	rarp->ar_hrd = htons(ARP_ETHER);
 	rarp->ar_pro = htons(PROT_IP);
diff --git a/net/rarp.h b/net/rarp.h
index 0d728dc..8723dd3 100644
--- a/net/rarp.h
+++ b/net/rarp.h
@@ -37,7 +37,7 @@ 
 
 extern int RarpTry;
 
-extern void RarpReceive(IP_t *ip, unsigned len);
+extern void RarpReceive(struct IP_UDP_t *ip, unsigned len);
 extern void RarpRequest(void);	/* Send a RARP request */
 
 /**********************************************************************/
diff --git a/net/sntp.c b/net/sntp.c
index 6dd0dbd..7997f98 100644
--- a/net/sntp.c
+++ b/net/sntp.c
@@ -31,7 +31,7 @@  SntpSend(void)
 	pkt.vn = NTP_VERSION;
 	pkt.mode = NTP_MODE_CLIENT;
 
-	memcpy((char *)NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE,
+	memcpy((char *)NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE,
 		(char *)&pkt, pktlen);
 
 	SntpOurPort = 10000 + (get_timer(0) % 4096);
diff --git a/net/tftp.c b/net/tftp.c
index bc7fe05..a04a832 100644
--- a/net/tftp.c
+++ b/net/tftp.c
@@ -322,7 +322,7 @@  TftpSend(void)
 	 *	We will always be sending some sort of packet, so
 	 *	cobble together the packet headers now.
 	 */
-	pkt = (uchar *)(NetTxPacket + NetEthHdrSize() + IP_HDR_SIZE);
+	pkt = NetTxPacket + NetEthHdrSize() + IP_UDP_HDR_SIZE;
 
 	switch (TftpState) {
 	case STATE_SEND_RRQ: