ethernet.h 868 B

123456789101112131415161718192021222324
  1. #ifndef __INC_ETHERNET_H
  2. #define __INC_ETHERNET_H
  3. #define ETHERNET_ADDRESS_LENGTH 6 /*!< Ethernet Address Length*/
  4. #define ETHERNET_HEADER_SIZE 14 /*!< Ethernet Header Length*/
  5. #define LLC_HEADER_SIZE 6 /*!< LLC Header Length*/
  6. #define TYPE_LENGTH_FIELD_SIZE 2 /*!< Type/Length Size*/
  7. #define MINIMUM_ETHERNET_PACKET_SIZE 60 /*!< Min Ethernet Packet Size*/
  8. #define MAXIMUM_ETHERNET_PACKET_SIZE 1514 /*!< Max Ethernet Packet Size*/
  9. /*!< Is Multicast Address? */
  10. #define RT_ETH_IS_MULTICAST(_pAddr) ((((u8 *)(_pAddr))[0]&0x01) != 0)
  11. /*!< Is Broadcast Address? */
  12. #define RT_ETH_IS_BROADCAST(_pAddr) ( \
  13. ((u8 *)(_pAddr))[0] == 0xff && \
  14. ((u8 *)(_pAddr))[1] == 0xff && \
  15. ((u8 *)(_pAddr))[2] == 0xff && \
  16. ((u8 *)(_pAddr))[3] == 0xff && \
  17. ((u8 *)(_pAddr))[4] == 0xff && \
  18. ((u8 *)(_pAddr))[5] == 0xff)
  19. #endif /* #ifndef __INC_ETHERNET_H */