Commit
b836c99f by Amerigo which got added on v3.7 generalized
the conntrack struct frag_queue while unifying the conntrack
reassembly expire code with a standard one. Although we won't
use the expiry code, another subsystem which we backport, the
ieee802154 6lowpan subsystem, makes use of this structure for
its own reassembly code. This makes that structure available
for older kernels.
mcgrof@ergon ~/linux-next (git::master)$ git describe --contains
b836c99f
v3.7-rc1~145^2~136
Cc: Amerigo Wang <amwang@redhat.com>
Signed-off-by: Luis R. Rodriguez <mcgrof@do-not-panic.com>
#include_next <net/ipv6.h>
#include <linux/version.h>
#include <net/addrconf.h>
+#include <net/inet_frag.h>
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
+/*
+ * Equivalent of ipv4 struct ip
+ */
+struct frag_queue {
+ struct inet_frag_queue q;
+
+ __be32 id; /* fragment id */
+ u32 user;
+ struct in6_addr saddr;
+ struct in6_addr daddr;
+
+ int iif;
+ unsigned int csum;
+ __u16 nhoffset;
+};
+#endif /* LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0) */
#if (LINUX_VERSION_CODE < KERNEL_VERSION(3,6,0)) && (LINUX_VERSION_CODE > KERNEL_VERSION(2,6,25))
#define ipv6_addr_hash LINUX_BACKPORT(ipv6_addr_hash)