--- linux-2.6-old/net/ipv4/netfilter/ipt_hashlimit.c	(revision 3678)
+++ linux-2.6/net/ipv4/netfilter/ipt_hashlimit.c	(working copy)
@@ -112,7 +112,7 @@
 static inline u_int32_t
 hash_dst(const struct ipt_hashlimit_htable *ht, const struct dsthash_dst *dst)
 {
-	return (jhash_3words(dst->dst_ip, (dst->dst_port<<16 & dst->src_port), 
+	return (jhash_3words(dst->dst_ip, (dst->dst_port<<16 | dst->src_port), 
 			     dst->src_ip, ht->rnd) % ht->cfg.size);
 }
 
