2#ifndef CLICKNET_ETHER_H
3#define CLICKNET_ETHER_H
18 uint8_t ether_dhost[6];
19 uint8_t ether_shost[6];
21} CLICK_SIZE_PACKED_ATTRIBUTE;
23#define ETHERTYPE_IP 0x0800
24#define ETHERTYPE_ARP 0x0806
25#define ETHERTYPE_TRAIL 0x1000
26#define ETHERTYPE_8021Q 0x8100
27#define ETHERTYPE_IP6 0x86DD
28#define ETHERTYPE_MACCONTROL 0x8808
29#define ETHERTYPE_PPPOE_DISC 0x8863
30#define ETHERTYPE_PPPOE_SESSION 0x8864
31#define ETHERTYPE_GRID 0x7fff
36#define ARPHRD_IEEE802 6
37#define ARPHRD_ARCNET 7
38#define ARPHRD_FRELAY 15
39#define ARPHRD_STRIP 23
40#define ARPHRD_IEEE1394 24
41#define ARPHRD_80211 801
46#define ARPOP_REQUEST 1
48#define ARPOP_REVREQUEST 3
49#define ARPOP_REVREPLY 4
50#define ARPOP_INVREQUEST 8
51#define ARPOP_INVREPLY 9
54struct click_ether_arp {
55 struct click_arp ea_hdr;
65struct click_ether_vlan {
66 uint8_t ether_dhost[6];
67 uint8_t ether_shost[6];
68 uint16_t ether_vlan_proto;
69 uint16_t ether_vlan_tci;
70 uint16_t ether_vlan_encap_proto;
71} CLICK_SIZE_PACKED_ATTRIBUTE;
76struct click_ether_macctl {
77 uint16_t ether_macctl_opcode;
78 uint16_t ether_macctl_param;
79 uint8_t ether_macctl_reserved[42];
82#define ETHER_MACCTL_OP_PAUSE 0x0001
96 uint8_t option_length;
112 uint8_t option_length;
118struct click_nd_adv2 {