Kernels earlier than 2.6.32 did not mark struct net_protocol as const
in inet_add_protcol() and inet_del_protocol(). This provides compatibility
code to cast away the constness on these kernels so we can have them be
const on newer kernels.
Signed-off-by: Jesse Gross <jesse@nicira.com>
Acked-by: Ben Pfaff <blp@nicira.com>
linux-2.6/compat-2.6/include/net/genetlink.h \
linux-2.6/compat-2.6/include/net/ip.h \
linux-2.6/compat-2.6/include/net/netlink.h \
+ linux-2.6/compat-2.6/include/net/protocol.h \
linux-2.6/compat-2.6/include/net/route.h
both_modules += brcompat
--- /dev/null
+#ifndef __NET_PROTOCOL_WRAPPER_H
+#define __NET_PROTOCOL_WRAPPER_H 1
+
+#include_next <net/protocol.h>
+
+#include <linux/version.h>
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32)
+#define inet_add_protocol(prot, num) inet_add_protocol((struct net_protocol *)(prot), num)
+#define inet_del_protocol(prot, num) inet_del_protocol((struct net_protocol *)(prot), num)
+#endif
+
+#endif