diff -Nru linux-2.4.20/net/ipv4/netfilter/ip_nat_standalone.c linux-2.4.20-pom2patch/net/ipv4/netfilter/ip_nat_standalone.c
--- linux-2.4.20/net/ipv4/netfilter/ip_nat_standalone.c	2003-05-02 12:59:17.000000000 -0500
+++ linux-2.4.20-pom2patch/net/ipv4/netfilter/ip_nat_standalone.c	2003-05-02 12:59:54.000000000 -0500
@@ -109,12 +109,6 @@
 		}
 		/* Fall thru... (Only ICMPs can be IP_CT_IS_REPLY) */
 	case IP_CT_NEW:
-#ifdef CONFIG_IP_NF_NAT_LOCAL
-		/* LOCAL_IN hook doesn't have a chain and thus doesn't care
-		 * about new packets -HW */
-		if (hooknum == NF_IP_LOCAL_IN)
-			return NF_ACCEPT;
-#endif
 		info = &ct->nat.info;
 
 		WRITE_LOCK(&ip_nat_lock);
@@ -130,6 +124,12 @@
 				ret = call_expect(master_ct(ct), pskb, 
 						  hooknum, ct, info);
 			} else {
+#ifdef CONFIG_IP_NF_NAT_LOCAL
+				/* LOCAL_IN hook doesn't have a chain!  */
+				if (hooknum == NF_IP_LOCAL_IN) {
+					ret = NF_ACCEPT;
+				} else
+#endif
 				ret = ip_nat_rule_find(pskb, hooknum, in, out,
 						       ct, info);
 			}
