Mercurial > flash_v2
annotate packages/net/tcpip/current/include/netinet6/ipv6.h @ 1777:c16341b1bac6 default tip
* Added execute permissions to files missed in conversion from CVS
| author | alexs |
|---|---|
| date | Mon, 12 Oct 2009 02:26:09 +0100 |
| parents | e0c0827131d1 |
| children |
| rev | line source |
|---|---|
|
97
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
1 //========================================================================== |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
2 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
3 // include/netinet6_ipv6.h |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
4 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
5 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
6 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
7 //========================================================================== |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
8 //####BSDCOPYRIGHTBEGIN#### |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
9 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
10 // ------------------------------------------- |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
11 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
12 // Portions of this software may have been derived from OpenBSD or other sources, |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
13 // and are covered by the appropriate copyright disclaimers included herein. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
14 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
15 // ------------------------------------------- |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
16 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
17 //####BSDCOPYRIGHTEND#### |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
18 //========================================================================== |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
19 //#####DESCRIPTIONBEGIN#### |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
20 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
21 // Author(s): gthomas |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
22 // Contributors: gthomas |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
23 // Date: 2000-01-10 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
24 // Purpose: |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
25 // Description: |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
26 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
27 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
28 //####DESCRIPTIONEND#### |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
29 // |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
30 //========================================================================== |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
31 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
32 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
33 /* |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
34 %%% copyright-nrl-95 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
35 This software is Copyright 1995-1998 by Randall Atkinson, Ronald Lee, |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
36 Daniel McDonald, Bao Phan, and Chris Winters. All Rights Reserved. All |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
37 rights under this copyright have been assigned to the US Naval Research |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
38 Laboratory (NRL). The NRL Copyright Notice and License Agreement Version |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
39 1.1 (January 17, 1995) applies to this software. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
40 You should have received a copy of the license with this software. If you |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
41 didn't get a copy, you may request one from <license@ipv6.nrl.navy.mil>. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
42 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
43 */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
44 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
45 #ifndef _NETINET6_IPV6_H |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
46 #define _NETINET6_IPV6_H 1 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
47 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
48 #define IPV6VERSION 6 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
49 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
50 /* |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
51 * Header structures. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
52 */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
53 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
54 struct ipv6 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
55 { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
56 uint32_t ipv6_versfl; /* Version and flow label word. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
57 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
58 uint16_t ipv6_length; /* Datagram length (not including the length |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
59 of this header). */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
60 uint8_t ipv6_nexthdr; /* Next header type. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
61 uint8_t ipv6_hoplimit; /* Hop limit. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
62 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
63 struct in6_addr ipv6_src; /* Source address. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
64 struct in6_addr ipv6_dst; /* Destination address. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
65 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
66 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
67 #if __linux__ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
68 #include <endian.h> |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
69 #else /* __linux__ */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
70 #include <machine/endian.h> |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
71 #endif /* __linux__ */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
72 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
73 struct ipv6hdr { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
74 #if BYTE_ORDER == LITTLE_ENDIAN |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
75 uint8_t ipv6_priority:4; /* going away? */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
76 uint8_t ipv6_version:4; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
77 uint32_t ipv6_flowid:24; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
78 #elif BYTE_ORDER == BIG_ENDIAN |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
79 uint32_t ipv6_flowid:24; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
80 uint8_t ipv6_priority:4; /* going away? */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
81 uint8_t ipv6_version:4; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
82 #else |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
83 #error "Don't know what endian to use." |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
84 #endif |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
85 uint16_t ipv6_len; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
86 uint8_t ipv6_nextheader; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
87 uint8_t ipv6_hoplimit; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
88 struct in6_addr ipv6_src; /* source address */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
89 struct in6_addr ipv6_dst; /* destination address */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
90 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
91 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
92 /* |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
93 * Macros and defines for header fields, and values thereof. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
94 * Assume things are in host order for these three macros. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
95 */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
96 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
97 #define IPV6_VERSION(h) ((h)->ipv6_versfl >> 28) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
98 #define IPV6_PRIORITY(h) (((h)->ipv6_versfl & 0x0f000000) >> 24) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
99 #define IPV6_FLOWID(h) ((h)->ipv6_versfl & 0x00ffffff) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
100 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
101 #define MAXHOPLIMIT 64 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
102 #define IPV6_MINMTU 576 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
103 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
104 /* |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
105 * Other IPv6 header definitions. |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
106 */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
107 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
108 /* Fragmentation header & macros for it. NOTE: Host order assumption. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
109 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
110 struct ipv6_fraghdr |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
111 { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
112 uint8_t frag_nexthdr; /* Next header type. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
113 uint8_t frag_reserved; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
114 uint16_t frag_bitsoffset; /* More bit and fragment offset. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
115 uint32_t frag_id; /* Fragment identifier. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
116 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
117 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
118 #define FRAG_MOREMASK 0x1 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
119 #define FRAG_OFFMASK 0xFFF8 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
120 #define FRAG_MORE_BIT(fh) ((fh)->frag_bitsoffset & FRAG_MOREMASK) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
121 #define FRAG_OFFSET(fh) ((fh)->frag_bitsoffset & FRAG_OFFMASK) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
122 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
123 /* Source routing header. Host order assumption for macros. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
124 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
125 struct ipv6_srcroute0 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
126 { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
127 uint8_t i6sr_nexthdr; /* Next header type. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
128 uint8_t i6sr_len; /* RH len in 8-byte addrs, !incl this structure */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
129 uint8_t i6sr_type; /* Routing type, should be 0 */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
130 uint8_t i6sr_left; /* Segments left */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
131 uint32_t i6sr_reserved; /* 8 bits of reserved padding. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
132 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
133 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
134 #define I6SR_BITMASK(i6sr) ((i6sr)->i6sr_reserved & 0xffffff) |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
135 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
136 /* Options header. For "ignoreable" options. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
137 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
138 struct ipv6_opthdr |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
139 { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
140 uint8_t oh_nexthdr; /* Next header type. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
141 uint8_t oh_extlen; /* Header extension length. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
142 uint8_t oh_data[6]; /* Option data, may be reserved for |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
143 alignment purposes. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
144 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
145 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
146 #define OPT_PAD1 0 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
147 #define OPT_PADN 1 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
148 #define OPT_JUMBO 194 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
149 |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
150 struct ipv6_option |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
151 { |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
152 uint8_t opt_type; /* Option type. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
153 uint8_t opt_datalen; /* Option data length. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
154 uint8_t opt_data[1]; /* Option data. */ |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
155 }; |
|
ced4577552cd
Merge from eCos master repository on 2000-06-06-08:44:00-BST
jlarmour
parents:
diff
changeset
|
156 #endif /* _NETINET6_IPV6_H */ |
