3 * \brief Definitinos for Ethernet Frames
\r
4 * \version $Revision: 1.2 $
\r
5 * \author Michael Norman
\r
11 /*******************************************************************/
\r
13 /* Ethernet standard lengths in bytes*/
\r
14 #define ETH_ADDR_LEN (6)
\r
15 #define ETH_TYPE_LEN (2)
\r
16 #define ETH_CRC_LEN (4)
\r
17 #define ETH_MAX_DATA (1500)
\r
18 #define ETH_MIN_DATA (46)
\r
19 #define ETH_HDR_LEN (ETH_ADDR_LEN * 2 + ETH_TYPE_LEN)
\r
21 /* Defined Ethernet Frame Types */
\r
22 #define ETH_FRM_IP (0x0800)
\r
23 #define ETH_FRM_ARP (0x0806)
\r
24 #define ETH_FRM_RARP (0x8035)
\r
25 #define ETH_FRM_TEST (0xA5A5)
\r
27 /* Maximum and Minimum Ethernet Frame Sizes */
\r
28 #define ETH_MAX_FRM (ETH_HDR_LEN + ETH_MAX_DATA + ETH_CRC_LEN)
\r
29 #define ETH_MIN_FRM (ETH_HDR_LEN + ETH_MIN_DATA + ETH_CRC_LEN)
\r
30 #define ETH_MTU (ETH_HDR_LEN + ETH_MAX_DATA)
\r
32 /* Ethernet Addresses */
\r
33 typedef uint8 ETH_ADDR[ETH_ADDR_LEN];
\r
35 /* 16-bit Ethernet Frame Type, ie. Protocol */
\r
36 typedef uint16 ETH_FRM_TYPE;
\r
38 /* Ethernet Frame Header definition */
\r
46 /* Ethernet Frame definition */
\r
53 /*******************************************************************/
\r