Set/clear the IWM_MAC_FILTER_IN_BEACON flag under conditions that match what

Linux does.

From OpenBSD rev.1.34.
This commit is contained in:
nonaka 2015-03-04 16:53:32 +00:00
parent b52075bfab
commit efa4975d06
1 changed files with 6 additions and 4 deletions

View File

@ -1,5 +1,5 @@
/* $NetBSD: if_iwm.c,v 1.24 2015/03/03 09:54:55 nonaka Exp $ */
/* OpenBSD: if_iwm.c,v 1.33 2015/03/03 06:56:12 kettenis Exp */
/* $NetBSD: if_iwm.c,v 1.25 2015/03/04 16:53:32 nonaka Exp $ */
/* OpenBSD: if_iwm.c,v 1.34 2015/03/03 20:14:34 kettenis Exp */
/*
* Copyright (c) 2014 genua mbh <info@genua.de>
@ -105,7 +105,7 @@
*/
#include <sys/cdefs.h>
__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.24 2015/03/03 09:54:55 nonaka Exp $");
__KERNEL_RCSID(0, "$NetBSD: if_iwm.c,v 1.25 2015/03/04 16:53:32 nonaka Exp $");
#include <sys/param.h>
#include <sys/conf.h>
@ -4971,7 +4971,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);