Hi Gurus, I am trying to apply u32 patch to the Redhat enterprise edition 4 which is using 2.6.9 kernel. I am getting the following compile error. I looked in the ipt_u32.c and found the matchsize variable: static struct ipt_match u32_match = { .name = "u32", .match = &match, .matchsize = sizeof(struct ipt_u32), .checkentry = &checkentry, .me = THIS_MODULE }; But in the ip_tables.h this varibale doesn't exists: struct ipt_match { struct list_head list; const char name[IPT_FUNCTION_MAXNAMELEN]; /* Return true or false: return FALSE and set *hotdrop = 1 to force immediate packet drop. */ /* Arguments changed since 2.4, as this must now handle non-linear skbs, using skb_copy_bits and skb_ip_make_writable. */ int (*match)(const struct sk_buff *skb, const struct net_device *in, const struct net_device *out, const void *matchinfo, int offset, int *hotdrop); /* Called when user tries to insert an entry of this type. */ /* Should return true or false. */ int (*checkentry)(const char *tablename, const struct ipt_ip *ip, void *matchinfo, unsigned int matchinfosize, unsigned int hook_mask); /* Called when entry of this type deleted. */ void (*destroy)(void *matchinfo, unsigned int matchinfosize); /* Set this to THIS_MODULE. */ struct module *me; }; Could you please guide me how can I fix this problem. I tried to fix this compile problem by commenting out the line ipt_u32.c which references matchsize variable. After that I was able to compile the kernel but when I tried to run iptables command, I got "Invalid argumment" error. Here is the command I used. iptables -A OUTPUT -m u32 --u32 "2&0xffff=0x2:0x0100" -j DROP iptables: Invalid argument I am not sure if I am seen this error because I commented out the line in ipt_u32.c? I appreciate if you point me to the right direction. Is u32 module is ported to linux 2.6 kernel? Thanks. Mohammad net/ipv4/netfilter/ipt_u32.c:127: warning: "struct xt_match" declared inside parameter list net/ipv4/netfilter/ipt_u32.c:127: warning: its scope is only this definition or declaration, which is probably not what you want net/ipv4/netfilter/ipt_u32.c:210: warning: "struct xt_match" declared inside parameter list net/ipv4/netfilter/ipt_u32.c:219: warning: initialization from incompatible pointer type net/ipv4/netfilter/ipt_u32.c:220: error: unknown field `matchsize' specified in initializer net/ipv4/netfilter/ipt_u32.c:220: warning: initialization makes pointer from integer without a cast net/ipv4/netfilter/ipt_u32.c:221: warning: initialization from incompatible pointer type make[3]: *** [net/ipv4/netfilter/ipt_u32.o] Error 1 make[2]: *** [net/ipv4/netfilter] Error 2 make[1]: *** [net/ipv4] Error 2 make: *** [net] Error 2