mirror of
https://github.com/ipxe/ipxe
synced 2025-12-30 04:28:12 +03:00
Moved if_ether.h and if_arp.h to include/gpxe, for consistency with Linux
kernel. Removed obsolete struct arprequest from if_arp.h and put it in nic.c so that nic.c will still compile. ARP will very shortly be handled by net/arp.c instead.
This commit is contained in:
31
src/include/gpxe/if_ether.h
Normal file
31
src/include/gpxe/if_ether.h
Normal file
@@ -0,0 +1,31 @@
|
||||
#ifndef _IF_ETHER_H
|
||||
#define _IF_ETHER_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define ETH_ALEN 6 /* Size of Ethernet address */
|
||||
#define ETH_HLEN 14 /* Size of ethernet header */
|
||||
#define ETH_ZLEN 60 /* Minimum packet */
|
||||
#define ETH_FRAME_LEN 1514 /* Maximum packet */
|
||||
#define ETH_DATA_ALIGN 2 /* Amount needed to align the data after an ethernet header */
|
||||
#ifndef ETH_MAX_MTU
|
||||
#define ETH_MAX_MTU (ETH_FRAME_LEN-ETH_HLEN)
|
||||
#endif
|
||||
|
||||
#define ETH_P_IP 0x0800 /* Internet Protocl Packet */
|
||||
#define ETH_P_ARP 0x0806 /* Address Resolution Protocol */
|
||||
#define ETH_P_RARP 0x8035 /* Reverse Address resolution Protocol */
|
||||
#define ETH_P_IPV6 0x86DD /* IPv6 over blueblook */
|
||||
#define ETH_P_SLOW 0x8809 /* Ethernet slow protocols */
|
||||
|
||||
/** An Ethernet link-layer header */
|
||||
struct ethhdr {
|
||||
/** Destination MAC address */
|
||||
uint8_t h_dest[ETH_ALEN];
|
||||
/** Source MAC address */
|
||||
uint8_t h_source[ETH_ALEN];
|
||||
/** Protocol ID */
|
||||
uint16_t h_protocol;
|
||||
} __attribute__ ((packed));
|
||||
|
||||
#endif /* _IF_ETHER_H */
|
||||
Reference in New Issue
Block a user