kernel: fix another corner case in the bridge state patch (#13874)

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@37347 3c298f89-4303-0410-b956-a3cf2f4a3e73
master
Felix Fietkau 2013-07-15 15:12:33 +00:00
parent addf81e48e
commit c369d9184c
2 changed files with 4 additions and 4 deletions

View File

@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
forward:
switch (p->state) {
+ case BR_STATE_DISABLED:
+ if (!ether_addr_equal(p->br->dev->dev_addr, dest))
+ goto drop;
+ if (ether_addr_equal(p->br->dev->dev_addr, dest))
+ skb->pkt_type = PACKET_HOST;
+
+ if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL,
+ br_handle_local_finish))

View File

@ -38,8 +38,8 @@ Signed-off-by: Felix Fietkau <nbd@openwrt.org>
forward:
switch (p->state) {
+ case BR_STATE_DISABLED:
+ if (!ether_addr_equal(p->br->dev->dev_addr, dest))
+ goto drop;
+ if (ether_addr_equal(p->br->dev->dev_addr, dest))
+ skb->pkt_type = PACKET_HOST;
+
+ if (NF_HOOK(NFPROTO_BRIDGE, NF_BR_PRE_ROUTING, skb, skb->dev, NULL,
+ br_handle_local_finish))