Rev 4153 | Rev 4350 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4153 | Rev 4243 | ||
---|---|---|---|
Line 109... | Line 109... | ||
109 | uint8_t ssap; |
109 | uint8_t ssap; |
110 | /** Control parameter. |
110 | /** Control parameter. |
111 | * The possible values are assigned by an IEEE committee. |
111 | * The possible values are assigned by an IEEE committee. |
112 | */ |
112 | */ |
113 | uint8_t ctrl; |
113 | uint8_t ctrl; |
114 | }; |
114 | } __attribute__ ((packed)); |
115 | 115 | ||
116 | /** Ethernet header SNAP extension. |
116 | /** Ethernet header SNAP extension. |
117 | */ |
117 | */ |
118 | struct eth_header_snap{ |
118 | struct eth_header_snap{ |
119 | /** Protocol identifier or organization code. |
119 | /** Protocol identifier or organization code. |
Line 121... | Line 121... | ||
121 | uint8_t proto[ 3 ]; |
121 | uint8_t proto[ 3 ]; |
122 | /** Ethernet protocol identifier in the network byte order (big endian). |
122 | /** Ethernet protocol identifier in the network byte order (big endian). |
123 | * @see ethernet_protocols.h |
123 | * @see ethernet_protocols.h |
124 | */ |
124 | */ |
125 | uint16_t ethertype; |
125 | uint16_t ethertype; |
126 | }; |
126 | } __attribute__ ((packed)); |
127 | 127 | ||
128 | /** Ethernet header preamble. |
128 | /** Ethernet header preamble. |
129 | * Used for dummy devices. |
129 | * Used for dummy devices. |
130 | */ |
130 | */ |
131 | struct eth_preamble{ |
131 | struct eth_preamble{ |
Line 135... | Line 135... | ||
135 | uint8_t preamble[ 7 ]; |
135 | uint8_t preamble[ 7 ]; |
136 | /** Start of Frame Delimiter used for the frame transmission synchronization. |
136 | /** Start of Frame Delimiter used for the frame transmission synchronization. |
137 | * Should be set to ETH_SFD. |
137 | * Should be set to ETH_SFD. |
138 | */ |
138 | */ |
139 | uint8_t sfd; |
139 | uint8_t sfd; |
140 | }; |
140 | } __attribute__ ((packed)); |
141 | 141 | ||
142 | /** Ethernet header. |
142 | /** Ethernet header. |
143 | */ |
143 | */ |
144 | struct eth_header{ |
144 | struct eth_header{ |
145 | /** Destination host Ethernet address (MAC address). |
145 | /** Destination host Ethernet address (MAC address). |
Line 150... | Line 150... | ||
150 | uint8_t src[ ETH_ADDR ]; |
150 | uint8_t src[ ETH_ADDR ]; |
151 | /** Ethernet protocol identifier in the network byte order (big endian). |
151 | /** Ethernet protocol identifier in the network byte order (big endian). |
152 | * @see ethernet_protocols.h |
152 | * @see ethernet_protocols.h |
153 | */ |
153 | */ |
154 | uint16_t ethertype; |
154 | uint16_t ethertype; |
155 | }; |
155 | } __attribute__ ((packed)); |
156 | 156 | ||
157 | /** Ethernet header with all the extensions. |
157 | /** Ethernet header with all the extensions. |
158 | */ |
158 | */ |
159 | struct eth_header_ex{ |
159 | struct eth_header_ex{ |
160 | /** Ethernet header. |
160 | /** Ethernet header. |
Line 166... | Line 166... | ||
166 | */ |
166 | */ |
167 | eth_header_lsap_t lsap; |
167 | eth_header_lsap_t lsap; |
168 | /** SNAP extension. |
168 | /** SNAP extension. |
169 | */ |
169 | */ |
170 | eth_header_snap_t snap; |
170 | eth_header_snap_t snap; |
171 | }; |
171 | } __attribute__ ((packed)); |
172 | 172 | ||
173 | /** Ethernet Frame Check Sequence. |
173 | /** Ethernet Frame Check Sequence. |
174 | */ |
174 | */ |
175 | typedef uint32_t eth_fcs_t; |
175 | typedef uint32_t eth_fcs_t; |
176 | 176 |