diff options
author | Henning Brauer <henning@cvs.openbsd.org> | 2003-12-16 21:35:29 +0000 |
---|---|---|
committer | Henning Brauer <henning@cvs.openbsd.org> | 2003-12-16 21:35:29 +0000 |
commit | d37687eab71de17e3d7ccd2a220e5016312b9c79 (patch) | |
tree | 944cf5362073f22b0fbc2f2121cbac1b984f196a /sys | |
parent | 3a97292e159afb28cb76d16899c36d4c360a7752 (diff) |
when a bridge filter rule specifies both src and dst mac address, we do not
want to compare both against the packet's source address. works much
better when we compare the dst address to the packet's dst address.
ok camield@ canacar@ markus@ jason@
Diffstat (limited to 'sys')
-rw-r--r-- | sys/net/if_bridge.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/net/if_bridge.c b/sys/net/if_bridge.c index 93033c5f0fd..0baaf5d8a44 100644 --- a/sys/net/if_bridge.c +++ b/sys/net/if_bridge.c @@ -1,4 +1,4 @@ -/* $OpenBSD: if_bridge.c,v 1.127 2003/12/16 20:33:25 markus Exp $ */ +/* $OpenBSD: if_bridge.c,v 1.128 2003/12/16 21:35:28 henning Exp $ */ /* * Copyright (c) 1999, 2000 Jason L. Wright (jason@thought.net) @@ -2056,7 +2056,7 @@ bridge_filterrule(struct brl_head *h, struct ether_header *eh, struct mbuf *m) if (flags == (BRL_FLAG_SRCVALID|BRL_FLAG_DSTVALID)) { if (bcmp(eh->ether_shost, &n->brl_src, ETHER_ADDR_LEN)) continue; - if (bcmp(eh->ether_dhost, &n->brl_src, ETHER_ADDR_LEN)) + if (bcmp(eh->ether_dhost, &n->brl_dst, ETHER_ADDR_LEN)) continue; goto return_action; } |