Click
Loading...
Searching...
No Matches
erspan.h
1#ifndef CLICKNET_ERSPAN_H
2#define CLICKNET_ERSPAN_H
3
4struct click_erspan {
5#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
6 uint8_t ver : 4;
7 uint16_t vlan_up : 4;
8#else
9 uint16_t vlan_up : 4;
10 uint8_t ver : 4;
11#endif
12 uint16_t vlan_down : 8;
13#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
14 uint8_t cos : 3;
15 uint8_t en : 2;
16 uint8_t t : 1;
17 uint16_t id_up : 2;
18#else
19 uint16_t id_up : 2;
20 uint8_t t : 1;
21 uint8_t en : 2;
22 uint8_t cos : 3;
23#endif
24 uint8_t id_down;
25 uint16_t _reserved : 12;
26 uint32_t index : 20;
27} CLICK_SIZE_PACKED_ATTRIBUTE;
28
29struct click_erspan3 {
30#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
31 uint8_t ver : 4;
32 uint16_t vlan_up : 4;
33#else
34 uint16_t vlan_up : 4;
35 uint8_t ver : 4;
36#endif
37 uint16_t vlan_down : 8;
38#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
39 uint8_t cos : 3;
40 uint8_t bso : 2;
41 uint8_t t : 1;
42 uint16_t id_up : 2;
43#else
44 uint16_t id_up : 2;
45 uint8_t t : 1;
46 uint8_t bso : 2;
47 uint8_t cos : 3;
48#endif
49 uint16_t id_down : 8;
50 uint32_t timestamp : 32;
51 uint16_t sgt : 16;
52
53#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
54 uint8_t p : 1;
55 uint8_t ft : 5;
56 uint8_t hw_up : 2;
57
58 uint8_t hw_down : 4;
59 uint8_t d : 1;
60 uint8_t gra : 2;
61 uint8_t o : 1;
62#else
63 uint8_t hw_up : 2;
64 uint8_t ft : 5;
65 uint8_t p : 1;
66 uint8_t o : 1;
67 uint8_t gra : 2;
68 uint8_t d : 1;
69 uint8_t hw_down : 4;
70
71#endif
72} CLICK_SIZE_PACKED_ATTRIBUTE;
73
74struct click_erspan3_platform {
75
76#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
77 uint8_t platf : 6;
78 uint64_t pltaf_info_up : 2;
79#else
80 uint64_t pltaf_info_up : 2;
81 uint8_t platf : 6;
82#endif
83 uint64_t pltaf_info_down : 56;
84} CLICK_SIZE_PACKED_ATTRIBUTE;
85
86struct click_erspan3_platform1 {
87 uint8_t platf : 6;
88 uint16_t _reserved : 14;
89 uint16_t vsm : 12;
90 uint32_t id;
91}CLICK_SIZE_PACKED_ATTRIBUTE;
92
97#if CLICK_BYTE_ORDER == CLICK_BIG_ENDIAN
98 uint8_t platf : 6;
99 uint64_t _reserved : 2;
100#else
101 uint64_t _reserved : 2;
102 uint8_t platf : 6;
103#endif
104 uint16_t _reserved2 : 8;
105 uint16_t _reserved3 : 2;
106 uint16_t id : 14;
107 uint32_t timestamp;
108} CLICK_SIZE_PACKED_ATTRIBUTE;
109
114 uint8_t platf : 6;
115 uint16_t _reserved : 12;
116 uint16_t _reserved2 : 14;
117 uint32_t _reserved3;
118} CLICK_SIZE_PACKED_ATTRIBUTE;
119
124 uint8_t platf : 6;
125 uint16_t switchid : 12;
126 uint16_t portid : 14;
127 uint32_t timestamp;
128}CLICK_SIZE_PACKED_ATTRIBUTE;
129
130#endif /* CLICKNET_ERSPAN_H */
Definition erspan.h:96
Definition erspan.h:113
Definition erspan.h:123