summaryrefslogtreecommitdiffstats
path: root/sys/netinet6/in6.h
diff options
context:
space:
mode:
authoradrian <adrian@FreeBSD.org>2015-11-06 23:07:43 +0000
committeradrian <adrian@FreeBSD.org>2015-11-06 23:07:43 +0000
commit7ba24ae6368d9df17036f1b6bc36729c45bc8317 (patch)
treed87d3176bab3257b6b60c92a86f55b31f6545aa0 /sys/netinet6/in6.h
parent5c556d172b476d346f11df999527162ccabefcda (diff)
downloadFreeBSD-src-7ba24ae6368d9df17036f1b6bc36729c45bc8317.zip
FreeBSD-src-7ba24ae6368d9df17036f1b6bc36729c45bc8317.tar.gz
[netinet6]: Create a new IPv6 netisr which expects the frames to have been verified.
This is required for fragments and encapsulated data (eg tunneling) to be redistributed to the RSS bucket based on the eventual IPv6 header and protocol (TCP, UDP, etc) header. * Add an mbuf tag with the state of IPv6 options parsing before the frame is queued into the direct dispatch handler; * Continue processing and complete the frame reception in the correct RSS bucket / netisr context. Testing results are in the phabricator review. Differential Revision: https://reviews.freebsd.org/D3563 Submitted by: Tiwei Bie <btw@mail.ustc.edu.cn>
Diffstat (limited to 'sys/netinet6/in6.h')
-rw-r--r--sys/netinet6/in6.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/sys/netinet6/in6.h b/sys/netinet6/in6.h
index 81d8d31..8f08c8f 100644
--- a/sys/netinet6/in6.h
+++ b/sys/netinet6/in6.h
@@ -382,6 +382,11 @@ struct route_in6 {
};
#endif
+#ifdef _KERNEL
+#define MTAG_ABI_IPV6 1444287380 /* IPv6 ABI */
+#define IPV6_TAG_DIRECT 0 /* direct-dispatch IPv6 */
+#endif /* _KERNEL */
+
/*
* Options for use with [gs]etsockopt at the IPV6 level.
* First word of comment is data type; bool is stored in int.
OpenPOWER on IntegriCloud