--- ipset-4.1.orig/kernel/ipt_SET.c	2009-11-10 21:45:41.000000000 +0100
+++ ipset-4.1/kernel/ipt_SET.c	2010-08-29 14:45:51.863658421 +0200
@@ -64,9 +64,12 @@ target(struct sk_buff *skb,
        unsigned int hooknum,
        const struct xt_target *target,
        const void *targinfo)
-#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)
 target(struct sk_buff *skb,
        const struct xt_target_param *par)
+#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) */
+target(struct sk_buff *skb,
+       const struct xt_action_param *par)
 #endif
 {
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)
@@ -127,9 +130,12 @@ checkentry(const char *tablename,
 	   const struct xt_target *target,
 	   void *targinfo,
 	   unsigned int hook_mask)
-#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,28) */
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(2,6,35)
 static bool
 checkentry(const struct xt_tgchk_param *par)
+#else /* LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,35) */
+static int
+checkentry(const struct xt_tgchk_param *par)
 #endif
 {
 #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,28)