1.\" 2.\" Copyright (c) 2009 Sam Leffler, Errno Consulting 3.\" All rights reserved. 4.\" 5.\" Redistribution and use in source and binary forms, with or without 6.\" modification, are permitted provided that the following conditions 7.\" are met: 8.\" 1. Redistributions of source code must retain the above copyright 9.\" notice, this list of conditions and the following disclaimer. 10.\" 2. Redistributions in binary form must reproduce the above copyright 11.\" notice, this list of conditions and the following disclaimer in the 12.\" documentation and/or other materials provided with the distribution. 13.\" 14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 15.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 16.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 17.\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 18.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 19.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 20.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 21.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 22.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 23.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 24.\" SUCH DAMAGE. 25.\" 26.Dd August 4, 2009 27.Dt IEEE80211_BMISS 9 28.Os 29.Sh NAME 30.Nm ieee80211_bmiss 31.Nd 802.11 beacon miss support 32.Sh SYNOPSIS 33.In net80211/ieee80211_var.h 34.Pp 35.Ft void 36.Fn ieee80211_beacon_miss "struct ieee80211com *" 37.Sh DESCRIPTION 38The 39.Nm net80211 40software layer provides a support framework for drivers that includes 41handling beacon miss events in station mode. 42Drivers can dispatch beacon miss events that are recognized in hardware or 43.Nm net80211 44can detect beacon miss if the driver dispatches received beacon frames 45through the normal receive path. 46Software beacon miss support is especially useful when multiple vaps 47are operating and any hardware beacon miss support is not available 48(e.g. operating as an access point together with one or more station 49mode vaps). 50.Pp 51Drivers should dispatch beacon miss events recognized in the driver with 52.Fn ieee80211_beacon_miss . 53This causes some number of ProbeRequest frames to be sent to the 54access point to check if the association is still alive. 55If no response is received and roaming mode is set to 56.Dv IEEE80211_ROAMING_AUTO 57then 58.Nm net80211 59will try to re-associate and if that fails 60trigger a scan to look for the access point or another suitable AP. 61When the 62.Nm net80211 63state machine is being operated manually, e.g. by 64.Xr wpa_supplicant 8 , 65then applications are notified of the state change and are responsible 66for handling the work of scanning for a new access point. 67The number of beacon miss events (without a ProbeResponse) is user 68settable with the 69.Dv IEEE80211_IOC_BMISSTHRESHOLD 70request. 71.Pp 72Software beacon miss detection is enabled per-vap by setting the 73.Dv IEEE80211_FEXT_SWBMISS 74flag. 75Typically this is done when a vap is setup 76when the 77.Dv IEEE80211_CLONE_NOBEACONS 78option is supplied to the clone operation. 79But drivers may also force this when they know they need help detecting 80beacon miss. 81When beacon miss is detected in software the event is dispatched without 82driver involvement. 83Note that software beacon miss handling is not limited to station mode; 84it can be used in any operating mode where beacons from a peer station 85are received. 86.Sh SEE ALSO 87.Xr wpa_supplicant 8 , 88.Xr ieee80211 9 , 89.Xr ieee80211_vap 9 90