aboutsummaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorJesse Gross <jesse@nicira.com>2012-11-09 17:05:07 -0800
committerJesse Gross <jesse@nicira.com>2012-11-09 17:05:07 -0800
commitf8f626754ebeca613cf1af2e6f890cfde0e74d5b (patch)
tree359723681fd28b4c6c523229dcf5c6c3fadfd60c /include/net
parentopenvswitch: Process RARP packets with ethertype 0x8035 similar to ARP packets. (diff)
downloadlinux-dev-f8f626754ebeca613cf1af2e6f890cfde0e74d5b.tar.xz
linux-dev-f8f626754ebeca613cf1af2e6f890cfde0e74d5b.zip
ipv6: Move ipv6_find_hdr() out of Netfilter code.
Open vSwitch will soon also use ipv6_find_hdr() so this moves it out of Netfilter-specific code into a more common location. Signed-off-by: Jesse Gross <jesse@nicira.com>
Diffstat (limited to '')
-rw-r--r--include/net/ipv6.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/include/net/ipv6.h b/include/net/ipv6.h
index 979bf6c13141..b2f0cfb0a381 100644
--- a/include/net/ipv6.h
+++ b/include/net/ipv6.h
@@ -630,6 +630,15 @@ extern int ipv6_skip_exthdr(const struct sk_buff *, int start,
extern bool ipv6_ext_hdr(u8 nexthdr);
+enum {
+ IP6_FH_F_FRAG = (1 << 0),
+ IP6_FH_F_AUTH = (1 << 1),
+};
+
+/* find specified header and get offset to it */
+extern int ipv6_find_hdr(const struct sk_buff *skb, unsigned int *offset,
+ int target, unsigned short *fragoff, int *fragflg);
+
extern int ipv6_find_tlv(struct sk_buff *skb, int offset, int type);
extern struct in6_addr *fl6_update_dst(struct flowi6 *fl6,