summaryrefslogtreecommitdiffstats
path: root/sys/dev/wl
diff options
context:
space:
mode:
authorarchie <archie@FreeBSD.org>2000-05-14 02:18:43 +0000
committerarchie <archie@FreeBSD.org>2000-05-14 02:18:43 +0000
commitfa21035b4e2f11d2c8f90174690853600b670e2d (patch)
tree9afb8dacfff6d7607064d8aa2bbf2da5069e8be6 /sys/dev/wl
parentd066b073153b986a54fd18a31d6bcc5d697933a2 (diff)
downloadFreeBSD-src-fa21035b4e2f11d2c8f90174690853600b670e2d.zip
FreeBSD-src-fa21035b4e2f11d2c8f90174690853600b670e2d.tar.gz
Move code to handle BPF and bridging for incoming Ethernet packets out
of the individual drivers and into the common routine ether_input(). Also, remove the (incomplete) hack for matching ethernet headers in the ip_fw code. The good news: net result of 1016 lines removed, and this should make bridging now work with *all* Ethernet drivers. The bad news: it's nearly impossible to test every driver, especially for bridging, and I was unable to get much testing help on the mailing lists. Reviewed by: freebsd-net
Diffstat (limited to 'sys/dev/wl')
-rw-r--r--sys/dev/wl/if_wl.c21
1 files changed, 2 insertions, 19 deletions
diff --git a/sys/dev/wl/if_wl.c b/sys/dev/wl/if_wl.c
index 6111b8d..44f2849 100644
--- a/sys/dev/wl/if_wl.c
+++ b/sys/dev/wl/if_wl.c
@@ -1075,27 +1075,10 @@ wlread(int unit, u_short fd_p)
m->m_pkthdr.len = clen;
/*
- * Check if there's a BPF listener on this interface. If so, hand off
- * the raw packet to bpf.
- */
- if (ifp->if_bpf) {
- /* bpf assumes header is in mbufs. It isn't. We can
- * fool it without allocating memory as follows.
- * Trick borrowed from if_ie.c
- */
- struct mbuf m0;
- m0.m_len = sizeof eh;
- m0.m_data = (caddr_t) &eh;
- m0.m_next = m;
-
- bpf_mtap(ifp, &m0);
-
- }
- /*
* If hw is in promiscuous mode (note that I said hardware, not if
* IFF_PROMISC is set in ifnet flags), then if this is a unicast
- * packet and the MAC dst is not us, drop it. This check was formerly
- * inside the bpf if, above, but IFF_MULTI causes hw promisc without
+ * packet and the MAC dst is not us, drop it. This check in normally
+ * inside ether_input(), but IFF_MULTI causes hw promisc without
* a bpf listener, so this is wrong.
* Greg Troxel <gdt@ir.bbn.com>, 1998-08-07
*/
OpenPOWER on IntegriCloud