diff options
author | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2005-09-07 21:19:03 -0400 |
---|---|---|
committer | YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> | 2005-09-07 21:19:03 -0400 |
commit | 41a1f8ea4fbfcdc4232f023732584aae2220de31 (patch) | |
tree | 9939686b354ced0b22d81efcbc12f5ed90372b09 /include | |
parent | 333fad5364d6b457c8d837f7d05802d2aaf8a961 (diff) |
[IPV6]: Support IPV6_{RECV,}TCLASS socket options / ancillary data.
Based on patch from David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: David L Stevens <dlstevens@us.ibm.com>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/in6.h | 2 | ||||
-rw-r--r-- | include/linux/ipv6.h | 5 | ||||
-rw-r--r-- | include/net/ipv6.h | 1 | ||||
-rw-r--r-- | include/net/transp_v6.h | 2 |
4 files changed, 6 insertions, 4 deletions
diff --git a/include/linux/in6.h b/include/linux/in6.h index c11022f2f2ac..bd32b79d6295 100644 --- a/include/linux/in6.h +++ b/include/linux/in6.h | |||
@@ -219,9 +219,7 @@ struct in6_flowlabel_req | |||
219 | #define IPV6_DSTOPTS 63 | 219 | #define IPV6_DSTOPTS 63 |
220 | #define IPV6_RECVHOPLIMIT 64 | 220 | #define IPV6_RECVHOPLIMIT 64 |
221 | #define IPV6_HOPLIMIT 65 | 221 | #define IPV6_HOPLIMIT 65 |
222 | #if 0 | ||
223 | #define IPV6_RECVTCLASS 66 | 222 | #define IPV6_RECVTCLASS 66 |
224 | #define IPV6_TCLASS 67 | 223 | #define IPV6_TCLASS 67 |
225 | #endif | ||
226 | 224 | ||
227 | #endif | 225 | #endif |
diff --git a/include/linux/ipv6.h b/include/linux/ipv6.h index 2581f1c94df5..6c5f7b39a4b0 100644 --- a/include/linux/ipv6.h +++ b/include/linux/ipv6.h | |||
@@ -245,7 +245,8 @@ struct ipv6_pinfo { | |||
245 | ohopopts:1, | 245 | ohopopts:1, |
246 | dstopts:1, | 246 | dstopts:1, |
247 | odstopts:1, | 247 | odstopts:1, |
248 | rxflow:1; | 248 | rxflow:1, |
249 | rxtclass:1; | ||
249 | } bits; | 250 | } bits; |
250 | __u16 all; | 251 | __u16 all; |
251 | } rxopt; | 252 | } rxopt; |
@@ -256,6 +257,7 @@ struct ipv6_pinfo { | |||
256 | sndflow:1, | 257 | sndflow:1, |
257 | pmtudisc:2, | 258 | pmtudisc:2, |
258 | ipv6only:1; | 259 | ipv6only:1; |
260 | __u8 tclass; | ||
259 | 261 | ||
260 | __u32 dst_cookie; | 262 | __u32 dst_cookie; |
261 | 263 | ||
@@ -269,6 +271,7 @@ struct ipv6_pinfo { | |||
269 | struct ipv6_txoptions *opt; | 271 | struct ipv6_txoptions *opt; |
270 | struct rt6_info *rt; | 272 | struct rt6_info *rt; |
271 | int hop_limit; | 273 | int hop_limit; |
274 | int tclass; | ||
272 | } cork; | 275 | } cork; |
273 | }; | 276 | }; |
274 | 277 | ||
diff --git a/include/net/ipv6.h b/include/net/ipv6.h index 8a9fe9434e94..65ec86678a08 100644 --- a/include/net/ipv6.h +++ b/include/net/ipv6.h | |||
@@ -377,6 +377,7 @@ extern int ip6_append_data(struct sock *sk, | |||
377 | int length, | 377 | int length, |
378 | int transhdrlen, | 378 | int transhdrlen, |
379 | int hlimit, | 379 | int hlimit, |
380 | int tclass, | ||
380 | struct ipv6_txoptions *opt, | 381 | struct ipv6_txoptions *opt, |
381 | struct flowi *fl, | 382 | struct flowi *fl, |
382 | struct rt6_info *rt, | 383 | struct rt6_info *rt, |
diff --git a/include/net/transp_v6.h b/include/net/transp_v6.h index 8b075ab7a26c..4e86f2de6638 100644 --- a/include/net/transp_v6.h +++ b/include/net/transp_v6.h | |||
@@ -37,7 +37,7 @@ extern int datagram_recv_ctl(struct sock *sk, | |||
37 | extern int datagram_send_ctl(struct msghdr *msg, | 37 | extern int datagram_send_ctl(struct msghdr *msg, |
38 | struct flowi *fl, | 38 | struct flowi *fl, |
39 | struct ipv6_txoptions *opt, | 39 | struct ipv6_txoptions *opt, |
40 | int *hlimit); | 40 | int *hlimit, int *tclass); |
41 | 41 | ||
42 | #define LOOPBACK4_IPV6 __constant_htonl(0x7f000006) | 42 | #define LOOPBACK4_IPV6 __constant_htonl(0x7f000006) |
43 | 43 | ||