IP6 specifications
[people/meteger/gpxe.git] / src / include / gpxe / ip6.h
1 #ifndef _GPXE_IP6_H
2 #define _GPXE_IP6_H
3
4 /** @file
5  *
6  * IP6 protocol
7  *
8  */
9
10 #include <ip.h>
11
12 /* IP6 constants */
13
14 #define IP6_VER         6
15
16 /* IP6 header */
17
18 struct ip6_header {
19         uint32_t        vers:4,
20                         traffic_class:8,
21                         flow_label:20;
22         uint16_t        payload_len;
23         uint8_t         nxt_hdr;
24         uint8_t         hop_limit;
25         struct in6_addr src;
26         struct in6_addr dest;
27 };
28
29 struct pk_buff;
30 struct net_device;
31 struct net_protocol;
32
33 extern struct net_protocol ipv6_protocol;
34
35 extern int ipv6_tx ( struct pk_buff *pkb, uint16_t trans_proto, struct in6_addr *dest );
36
37 #endif /* _GPXE_IP6_H */