netfilter: bridge: refactor clearing BRNF_NF_BRIDGE_PREROUTING
use binary AND on complement of BRNF_NF_BRIDGE_PREROUTING to unset bit in nf_bridge->mask. Signed-off-by: Bernhard Thaler <bernhard.thaler@wvnet.at> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
This commit is contained in:
parent
779668450a
commit
d39a33ed9b
1 changed files with 2 additions and 2 deletions
|
@ -290,7 +290,7 @@ static int br_nf_pre_routing_finish_ipv6(struct sock *sk, struct sk_buff *skb)
|
||||||
skb->pkt_type = PACKET_OTHERHOST;
|
skb->pkt_type = PACKET_OTHERHOST;
|
||||||
nf_bridge->pkt_otherhost = false;
|
nf_bridge->pkt_otherhost = false;
|
||||||
}
|
}
|
||||||
nf_bridge->mask ^= BRNF_NF_BRIDGE_PREROUTING;
|
nf_bridge->mask &= ~BRNF_NF_BRIDGE_PREROUTING;
|
||||||
|
|
||||||
rt = bridge_parent_rtable(nf_bridge->physindev);
|
rt = bridge_parent_rtable(nf_bridge->physindev);
|
||||||
if (!rt) {
|
if (!rt) {
|
||||||
|
@ -415,7 +415,7 @@ static int br_nf_pre_routing_finish(struct sock *sk, struct sk_buff *skb)
|
||||||
skb->pkt_type = PACKET_OTHERHOST;
|
skb->pkt_type = PACKET_OTHERHOST;
|
||||||
nf_bridge->pkt_otherhost = false;
|
nf_bridge->pkt_otherhost = false;
|
||||||
}
|
}
|
||||||
nf_bridge->mask ^= BRNF_NF_BRIDGE_PREROUTING;
|
nf_bridge->mask &= ~BRNF_NF_BRIDGE_PREROUTING;
|
||||||
if (daddr_was_changed(skb, nf_bridge)) {
|
if (daddr_was_changed(skb, nf_bridge)) {
|
||||||
if ((err = ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))) {
|
if ((err = ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))) {
|
||||||
struct in_device *in_dev = __in_dev_get_rcu(dev);
|
struct in_device *in_dev = __in_dev_get_rcu(dev);
|
||||||
|
|
Loading…
Add table
Reference in a new issue