patch-2.4.18 linux/net/ipv4/netfilter/ipt_REDIRECT.c
Next file: linux/net/ipv4/netfilter/ipt_ULOG.c
Previous file: linux/net/ipv4/netfilter/ipt_LOG.c
Back to the patch index
Back to the overall index
- Lines: 21
- Date:
Wed Jan 23 20:24:37 2002
- Orig file:
linux.orig/net/ipv4/netfilter/ipt_REDIRECT.c
- Orig date:
Mon Feb 18 20:18:40 2002
diff -Naur -X /home/marcelo/lib/dontdiff linux.orig/net/ipv4/netfilter/ipt_REDIRECT.c linux/net/ipv4/netfilter/ipt_REDIRECT.c
@@ -74,10 +74,17 @@
/* Local packets: make them go to loopback */
if (hooknum == NF_IP_LOCAL_OUT)
newdst = htonl(0x7F000001);
- else
+ else {
+ struct in_device *indev;
+
+ /* Device might not have an associated in_device. */
+ indev = (struct in_device *)(*pskb)->dev->ip_ptr;
+ if (indev == NULL)
+ return NF_DROP;
+
/* Grab first address on interface. */
- newdst = (((struct in_device *)(*pskb)->dev->ip_ptr)
- ->ifa_list->ifa_local);
+ newdst = indev->ifa_list->ifa_local;
+ }
/* Transfer from original range. */
newrange = ((struct ip_nat_multi_range)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)