Date: Thu, 1 Mar 2018 06:42:48 +0000 (UTC) From: Eitan Adler <eadler@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org Subject: svn commit: r330212 - stable/11/sys/dev/iwm Message-ID: <201803010642.w216gmgs063558@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: eadler Date: Thu Mar 1 06:42:47 2018 New Revision: 330212 URL: https://svnweb.freebsd.org/changeset/base/330212 Log: MFC r318224: [iwm] Refuse connection to APs with beacon interval < 16. Modified: stable/11/sys/dev/iwm/if_iwm.c Directory Properties: stable/11/ (props changed) Modified: stable/11/sys/dev/iwm/if_iwm.c ============================================================================== --- stable/11/sys/dev/iwm/if_iwm.c Thu Mar 1 06:42:19 2018 (r330211) +++ stable/11/sys/dev/iwm/if_iwm.c Thu Mar 1 06:42:47 2018 (r330212) @@ -3961,6 +3961,21 @@ iwm_auth(struct ieee80211vap *vap, struct iwm_softc *s in->in_assoc = 0; + /* + * Firmware bug - it'll crash if the beacon interval is less + * than 16. We can't avoid connecting at all, so refuse the + * station state change, this will cause net80211 to abandon + * attempts to connect to this AP, and eventually wpa_s will + * blacklist the AP... + */ + if (ni->ni_intval < 16) { + device_printf(sc->sc_dev, + "AP %s beacon interval is %d, refusing due to firmware bug!\n", + ether_sprintf(ni->ni_bssid), ni->ni_intval); + error = EINVAL; + goto out; + } + error = iwm_mvm_sf_config(sc, IWM_SF_FULL_ON); if (error != 0) return error;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803010642.w216gmgs063558>