| Summary: | if_vr.c can't bridging properly when bpf is opened. | ||
|---|---|---|---|
| Product: | Base System | Reporter: | tateoka <tateoka> |
| Component: | kern | Assignee: | freebsd-bugs (Nobody) <bugs> |
| Status: | Closed FIXED | ||
| Severity: | Affects Only Me | ||
| Priority: | Normal | ||
| Version: | 4.0-RELEASE | ||
| Hardware: | Any | ||
| OS: | Any | ||
State Changed From-To: open->feedback Does this problem still occur in newer versions of FreeBSD, such as 4.3-RELEASE? State Changed From-To: feedback->closed Timeout; no response from originator. |
Bridging does not work properly when bpf is opened. in vr_rxeof() ( if_vr.c ) When bpf is opened, a packet to other machines is not passed to only the ether_input but also bridging code. Fix: delete checking eh->ether_dhost code in BPF code and BRIDGE code. and put it just before the ether_input(ifp, eh, m); How-To-Repeat: Enable BRIDGE option in the kernel and enable sysctl -w net.link.ether.bridge=1 then, open bpf ( for example, use tcpdump )