.\" .\" Copyright (c) 2004 Bruce M. Simpson .\" Copyright (c) 2004 Darron Broad .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without .\" modification, are permitted provided that the following conditions .\" are met: .\" 1. Redistributions of source code must retain the above copyright .\" notice, this list of conditions and the following disclaimer. .\" 2. Redistributions in binary form must reproduce the above copyright .\" notice, this list of conditions and the following disclaimer in the .\" documentation and/or other materials provided with the distribution. .\" .\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE .\" ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" .\" $FreeBSD$ .\" $DragonFly: src/share/man/man9/ieee80211_input.9,v 1.4 2006/06/28 19:41:59 swildner Exp $ .\" $Id: ieee80211_input.9,v 1.2 2004/07/07 12:59:39 ru Exp $ .\" .Dd June 28, 2006 .Dt IEEE80211_INPUT 9 .Os .Sh NAME .Nm ieee80211_input , .Nm ieee80211_recv_mgmt .Nd software 802.11 stack input functions .Sh SYNOPSIS .In netproto/802_11/ieee80211_var.h .Ft void .Fo ieee80211_input .Fa "struct ieee80211com *ic" "struct mbuf *m" "struct ieee80211_node *ni" .Fa "int rssi" "uint32_t rstamp" .Fc .Ft void .Fo ieee80211_recv_mgmt .Fa "struct ieee80211com *ic" "struct mbuf *m" "struct ieee80211_node *ni" .Fa "int subtype" "int rssi" "uint32_t rstamp" .Fc .Sh DESCRIPTION These functions process received 802.11 frames. .Pp .\" The .Fn ieee80211_input function takes an mbuf chain .Fa m containing a complete 802.11 frame from the interface .Fa ic and passes it to the software 802.11 stack for input processing. The .Fa ni argument specifies an instance of .Vt struct ieee80211_node (which may be driver-specific) representing the node from which the frame was received, and must not be .Dv NULL . Typically, .Fa ni is the return value of .Xr ieee80211_find_rxnode 9 . The arguments .Fa rssi and .Fa rstamp are typically derived from on-card data structures; they are used for recording the signal strength and time received of the frame respectively. .Pp .\" The .Fn ieee80211_recv_mgmt performs input processing for 802.11 management frames. It is typically called from within .Fn ieee80211_input through .Va ic_recv_mgmt . If the driver wants to intercept the 802.11 management frames' processing, it will save .Va ic_recv_mgmt for later use and assign its own .Fn recv_mgmt to .Va ic_recv_mgmt . The saved function, i.e. .Fn ieee80211_recv_mgmt , must be called within the driver's own .Fn recv_mgmt . .\" .Sh SEE ALSO .Xr ieee80211 9 , .Xr ifnet 9 .Sh HISTORY The .Nm ieee80211 series of functions first appeared in .Nx 1.5 , and were later ported to .Fx 4.6 . .Sh AUTHORS .An -nosplit This man page was written by .An Bruce M. Simpson Aq bms@FreeBSD.org and .An Darron Broad Aq darron@kewl.org .