net: cosmetic: Un-typedef Ethernet_t

Separate the Ethernet header from the 802 header.
Base the size constants on the structs.

Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
This commit is contained in:
Joe Hershberger 2012-05-23 07:58:06 +00:00
parent c5c59df04d
commit cb487f5664
9 changed files with 36 additions and 26 deletions

View File

@ -1049,11 +1049,11 @@ eth_loopback_test (void)
} }
else { else {
ushort datlen = bdp->cbd_datlen; ushort datlen = bdp->cbd_datlen;
Ethernet_t *ehp; struct ethernet_hdr *ehp;
ushort prot; ushort prot;
int ours, tb, n, nbytes; int ours, tb, n, nbytes;
ehp = (Ethernet_t *) \ ehp = (struct ethernet_hdr *) \
&ecp->rxbufs[i][0]; &ecp->rxbufs[i][0];
ours = memcmp (ehp->et_src, \ ours = memcmp (ehp->et_src, \
@ -1063,9 +1063,8 @@ eth_loopback_test (void)
tb = prot & 0x8000; tb = prot & 0x8000;
n = prot & 0x7fff; n = prot & 0x7fff;
nbytes = ELBT_BUFSZ - \ nbytes = ELBT_BUFSZ -
offsetof (Ethernet_t, \ ETHER_HDR_SIZE -
et_dsap) - \
ELBT_CRCSZ; ELBT_CRCSZ;
/* check the frame is correct */ /* check the frame is correct */
@ -1080,10 +1079,10 @@ eth_loopback_test (void)
patwords[n]; patwords[n];
uint nbb; uint nbb;
nbb = badbits ( \ nbb = badbits(
&ehp->et_dsap, \ ((uchar *)&ehp) +
nbytes, \ ETHER_HDR_SIZE,
patword); nbytes, patword);
ecp->rxeacc.badbit += \ ecp->rxeacc.badbit += \
nbb; nbb;

View File

@ -156,7 +156,17 @@ u32 ether_crc(size_t len, unsigned char const *p);
/* /*
* Ethernet header * Ethernet header
*/ */
typedef struct {
struct ethernet_hdr {
uchar et_dest[6]; /* Destination node */
uchar et_src[6]; /* Source node */
ushort et_protlen; /* Protocol or length */
};
/* Ethernet header size */
#define ETHER_HDR_SIZE (sizeof(struct ethernet_hdr))
struct e802_hdr {
uchar et_dest[6]; /* Destination node */ uchar et_dest[6]; /* Destination node */
uchar et_src[6]; /* Source node */ uchar et_src[6]; /* Source node */
ushort et_protlen; /* Protocol or length */ ushort et_protlen; /* Protocol or length */
@ -167,10 +177,10 @@ typedef struct {
uchar et_snap2; uchar et_snap2;
uchar et_snap3; uchar et_snap3;
ushort et_prot; /* 802 protocol */ ushort et_prot; /* 802 protocol */
} Ethernet_t; };
#define ETHER_HDR_SIZE 14 /* Ethernet header size */ /* 802 ethernet header size */
#define E802_HDR_SIZE 22 /* 802 ethernet header size */ #define E802_HDR_SIZE (sizeof(struct e802_hdr))
/* /*
* Ethernet header * Ethernet header

View File

@ -113,7 +113,7 @@ void ArpTimeoutCheck(void)
} }
} }
void ArpReceive(Ethernet_t *et, struct ip_udp_hdr *ip, int len) void ArpReceive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len)
{ {
ARP_t *arp; ARP_t *arp;
IPaddr_t tmp; IPaddr_t tmp;
@ -193,7 +193,7 @@ void ArpReceive(Ethernet_t *et, struct ip_udp_hdr *ip, int len)
NetGetHandler()(0, 0, 0, 0, 0); NetGetHandler()(0, 0, 0, 0, 0);
#endif #endif
/* modify header, and transmit it */ /* modify header, and transmit it */
memcpy(((Ethernet_t *)NetArpWaitTxPacket)-> memcpy(((struct ethernet_hdr *)NetArpWaitTxPacket)->
et_dest, NetArpWaitPacketMAC, 6); et_dest, NetArpWaitPacketMAC, 6);
(void) eth_send(NetArpWaitTxPacket, (void) eth_send(NetArpWaitTxPacket,
NetArpWaitTxPacketSize); NetArpWaitTxPacketSize);

View File

@ -25,6 +25,6 @@ extern int NetArpWaitTry;
void ArpInit(void); void ArpInit(void);
void ArpRequest(void); void ArpRequest(void);
void ArpTimeoutCheck(void); void ArpTimeoutCheck(void);
void ArpReceive(Ethernet_t *et, struct ip_udp_hdr *ip, int len); void ArpReceive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len);
#endif /* __ARP_H__ */ #endif /* __ARP_H__ */

View File

@ -103,7 +103,7 @@ static void BootpCopyNetParams(struct Bootp_t *bp)
NetCopyIP(&tmp_ip, &bp->bp_siaddr); NetCopyIP(&tmp_ip, &bp->bp_siaddr);
if (tmp_ip != 0) if (tmp_ip != 0)
NetCopyIP(&NetServerIP, &bp->bp_siaddr); NetCopyIP(&NetServerIP, &bp->bp_siaddr);
memcpy(NetServerEther, ((Ethernet_t *)NetRxPacket)->et_src, 6); memcpy(NetServerEther, ((struct ethernet_hdr *)NetRxPacket)->et_src, 6);
#endif #endif
if (strlen(bp->bp_file) > 0) if (strlen(bp->bp_file) > 0)
copy_filename(BootFile, bp->bp_file, sizeof(BootFile)); copy_filename(BootFile, bp->bp_file, sizeof(BootFile));

View File

@ -109,7 +109,7 @@ CDPSendTrigger(void)
uchar *pkt; uchar *pkt;
ushort *s; ushort *s;
ushort *cp; ushort *cp;
Ethernet_t *et; struct ethernet_hdr *et;
int len; int len;
ushort chksum; ushort chksum;
#if defined(CONFIG_CDP_DEVICE_ID) || defined(CONFIG_CDP_PORT_ID) || \ #if defined(CONFIG_CDP_DEVICE_ID) || defined(CONFIG_CDP_PORT_ID) || \
@ -118,7 +118,7 @@ CDPSendTrigger(void)
#endif #endif
pkt = NetTxPacket; pkt = NetTxPacket;
et = (Ethernet_t *)pkt; et = (struct ethernet_hdr *)pkt;
/* NOTE: trigger sent not on any VLAN */ /* NOTE: trigger sent not on any VLAN */

View File

@ -823,7 +823,7 @@ static inline struct ip_udp_hdr *NetDefragment(struct ip_udp_hdr *ip, int *lenp)
* @parma ip IP packet containing the ICMP * @parma ip IP packet containing the ICMP
*/ */
static void receive_icmp(struct ip_udp_hdr *ip, int len, static void receive_icmp(struct ip_udp_hdr *ip, int len,
IPaddr_t src_ip, Ethernet_t *et) IPaddr_t src_ip, struct ethernet_hdr *et)
{ {
ICMP_t *icmph = (ICMP_t *)&ip->udp_src; ICMP_t *icmph = (ICMP_t *)&ip->udp_src;
@ -851,7 +851,7 @@ static void receive_icmp(struct ip_udp_hdr *ip, int len,
void void
NetReceive(uchar *inpkt, int len) NetReceive(uchar *inpkt, int len)
{ {
Ethernet_t *et; struct ethernet_hdr *et;
struct ip_udp_hdr *ip; struct ip_udp_hdr *ip;
IPaddr_t tmp; IPaddr_t tmp;
IPaddr_t src_ip; IPaddr_t src_ip;
@ -865,7 +865,7 @@ NetReceive(uchar *inpkt, int len)
NetRxPacket = inpkt; NetRxPacket = inpkt;
NetRxPacketLen = len; NetRxPacketLen = len;
et = (Ethernet_t *)inpkt; et = (struct ethernet_hdr *)inpkt;
/* too small packet? */ /* too small packet? */
if (len < ETHER_HDR_SIZE) if (len < ETHER_HDR_SIZE)
@ -895,10 +895,11 @@ NetReceive(uchar *inpkt, int len)
debug("packet received\n"); debug("packet received\n");
if (x < 1514) { if (x < 1514) {
struct e802_hdr *et802 = (struct e802_hdr *)et;
/* /*
* Got a 802 packet. Check the other protocol field. * Got a 802 packet. Check the other protocol field.
*/ */
x = ntohs(et->et_prot); x = ntohs(et802->et_prot);
ip = (struct ip_udp_hdr *)(inpkt + E802_HDR_SIZE); ip = (struct ip_udp_hdr *)(inpkt + E802_HDR_SIZE);
len -= E802_HDR_SIZE; len -= E802_HDR_SIZE;
@ -1218,7 +1219,7 @@ NetEthHdrSize(void)
int int
NetSetEther(uchar *xet, uchar * addr, uint prot) NetSetEther(uchar *xet, uchar * addr, uint prot)
{ {
Ethernet_t *et = (Ethernet_t *)xet; struct ethernet_hdr *et = (struct ethernet_hdr *)xet;
ushort myvlanid; ushort myvlanid;
myvlanid = ntohs(NetOurVLAN); myvlanid = ntohs(NetOurVLAN);

View File

@ -98,7 +98,7 @@ void ping_start(void)
ping_send(); ping_send();
} }
void ping_receive(Ethernet_t *et, struct ip_udp_hdr *ip, int len) void ping_receive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len)
{ {
ICMP_t *icmph = (ICMP_t *)&(ip->udp_src); ICMP_t *icmph = (ICMP_t *)&(ip->udp_src);
IPaddr_t src_ip; IPaddr_t src_ip;

View File

@ -28,7 +28,7 @@ void ping_start(void);
* @param ip IP header in the same packet * @param ip IP header in the same packet
* @param len Packet length * @param len Packet length
*/ */
void ping_receive(Ethernet_t *et, struct ip_udp_hdr *ip, int len); void ping_receive(struct ethernet_hdr *et, struct ip_udp_hdr *ip, int len);
#endif /* __PING_H__ */ #endif /* __PING_H__ */
#endif #endif