datapath: Fix compat checks for ipv6_skip_exthdr()
authorPravin B Shelar <pshelar@nicira.com>
Mon, 3 Nov 2014 16:55:12 +0000 (08:55 -0800)
committerPravin B Shelar <pshelar@nicira.com>
Thu, 6 Nov 2014 18:11:01 +0000 (10:11 -0800)
Signed-off-by: Pravin B Shelar <pshelar@nicira.com>
datapath/linux/compat/exthdrs_core.c
datapath/linux/compat/include/net/ipv6.h

index 29e4e05..56a17da 100644 (file)
@@ -2,7 +2,6 @@
 #include <linux/version.h>
 #include <net/ipv6.h>
 
-#ifndef HAVE_IP6_FH_F_SKIP_RH
 #if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
 int rpl_ipv6_skip_exthdr(const struct sk_buff *skb, int start,
                         u8 *nexthdrp, __be16 *frag_offp)
@@ -48,6 +47,7 @@ int rpl_ipv6_skip_exthdr(const struct sk_buff *skb, int start,
 }
 #endif /* Kernel version < 3.3 */
 
+#ifndef HAVE_IP6_FH_F_SKIP_RH
 /*
  * find the offset to specified header or the protocol number of last header
  * if target < 0. "last header" is transport protocol header, ESP, or
index 1762a4d..450e307 100644 (file)
@@ -9,6 +9,12 @@
 #define NEXTHDR_SCTP    132 /* Stream Control Transport Protocol */
 #endif
 
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
+#define ipv6_skip_exthdr rpl_ipv6_skip_exthdr
+extern int ipv6_skip_exthdr(const struct sk_buff *skb, int start,
+                           u8 *nexthdrp, __be16 *frag_offp);
+#endif
+
 #ifndef HAVE_IP6_FH_F_SKIP_RH
 
 enum {
@@ -17,12 +23,6 @@ enum {
        IP6_FH_F_SKIP_RH        = (1 << 2),
 };
 
-#if LINUX_VERSION_CODE < KERNEL_VERSION(3,3,0)
-#define ipv6_skip_exthdr rpl_ipv6_skip_exthdr
-extern int ipv6_skip_exthdr(const struct sk_buff *skb, int start,
-                           u8 *nexthdrp, __be16 *frag_offp);
-#endif
-
 /* This function is upstream, but not the version which skips routing
  * headers with 0 segments_left. We fixed it when we introduced
  * IP6_FH_F_SKIP_RH.