summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@cvs.openbsd.org>2015-03-03 20:14:35 +0000
committerMark Kettenis <kettenis@cvs.openbsd.org>2015-03-03 20:14:35 +0000
commit6e7efc9a19cf075b8e62c6f4d0ff1df213038dbc (patch)
treece329a8e15d07a6986a2e372271aad842521e1c8 /sys
parent2b4563c06aaa8db79326a9bca7f19f8af3c95409 (diff)
Set/clear the IWM_MAC_FILTER_IN_BEACON flag under conditions that match what
Linux does. ok jsg@
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/if_iwm.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/dev/pci/if_iwm.c b/sys/dev/pci/if_iwm.c
index def8d66d901..ae136699ad6 100644
--- a/sys/dev/pci/if_iwm.c
+++ b/sys/dev/pci/if_iwm.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_iwm.c,v 1.33 2015/03/03 06:56:12 kettenis Exp $ */
+/* $OpenBSD: if_iwm.c,v 1.34 2015/03/03 20:14:34 kettenis Exp $ */
/*
* Copyright (c) 2014 genua mbh <info@genua.de>
@@ -4881,7 +4881,9 @@ iwm_mvm_mac_ctxt_cmd_station(struct iwm_softc *sc, struct iwm_node *in,
/* Fill the common data for all mac context types */
iwm_mvm_mac_ctxt_cmd_common(sc, in, &cmd, action);
- if (in->in_assoc)
+ /* Allow beacons to pass through as long as we are not associated,or we
+ * do not have dtim period information */
+ if (!in->in_assoc || !sc->sc_ic.ic_dtim_period)
cmd.filter_flags |= htole32(IWM_MAC_FILTER_IN_BEACON);
else
cmd.filter_flags &= ~htole32(IWM_MAC_FILTER_IN_BEACON);