diff options
author | Patrick McHardy <kaber@trash.net> | 2007-03-07 05:24:53 +0100 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-03-08 01:08:03 +0100 |
commit | ba5dcee128d9f2877a6d2a5b150c24d90d77dad1 (patch) | |
tree | efd5a53fcb30f56bf912bb2eb81ab156205d9a1b | |
parent | [NETFILTER]: nfnetlink_log: zero-terminate prefix (diff) | |
download | linux-ba5dcee128d9f2877a6d2a5b150c24d90d77dad1.tar.xz linux-ba5dcee128d9f2877a6d2a5b150c24d90d77dad1.zip |
[NETFILTER]: nfnetlink_log: fix crash on bridged packet
physoutdev is only set on purely bridged packet, when nfnetlink_log is used
in the OUTPUT/FORWARD/POSTROUTING hooks on packets forwarded from or to a
bridge it crashes when trying to dereference skb->nf_bridge->physoutdev.
Reported by Holger Eitzenberger <heitzenberger@astaro.com>
Signed-off-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | net/netfilter/nfnetlink_log.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/netfilter/nfnetlink_log.c b/net/netfilter/nfnetlink_log.c index 12f92e235a13..5cb30ebba0f4 100644 --- a/net/netfilter/nfnetlink_log.c +++ b/net/netfilter/nfnetlink_log.c @@ -486,7 +486,7 @@ __build_packet_message(struct nfulnl_instance *inst, * for physical device (when called from ipv4) */ NFA_PUT(inst->skb, NFULA_IFINDEX_OUTDEV, sizeof(tmp_uint), &tmp_uint); - if (skb->nf_bridge) { + if (skb->nf_bridge && skb->nf_bridge->physoutdev) { tmp_uint = htonl(skb->nf_bridge->physoutdev->ifindex); NFA_PUT(inst->skb, NFULA_IFINDEX_PHYSOUTDEV, |