NAME
ieee80211_encap,
ieee80211_add_rates,
ieee80211_add_xrates,
ieee80211_send_mgmt
—
software 802.11 stack output functions
SYNOPSIS
#include <net80211/ieee80211_var.h>
#include <net80211/ieee80211_proto.h>
struct mbuf *
ieee80211_encap(
struct ieee80211com *ic,
struct mbuf *m,
struct ieee80211_node
*ni);
u_int8_t *
ieee80211_add_rates(
u_int8_t
*frm,
const struct
ieee80211_rateset *rs);
u_int8_t *
ieee80211_add_xrates(
u_int8_t
*frm,
const struct
ieee80211_rateset *rs);
int
ieee80211_send_mgmt(
struct ieee80211com
*ic,
struct ieee80211_node *ni,
int type,
int arg);
DESCRIPTION
These functions handle the encapsulation and transmission of 802.11 frames
within the software 802.11 stack.
The
ieee80211_encap() function encapsulates an outbound data
frame contained within the mbuf chain
m from the
interface
ic. The argument
ni is a
reference to the destination node.
If the function is successful, the mbuf chain is updated with the 802.11 frame
header prepended, and a pointer to the head of the chain is returned. If an
error occurs,
NULL
is returned.
The
ieee80211_add_rates() utility function is used to add the
rate set element
*rs to the frame
frm. A pointer to the location in the buffer after the
addition of the rate set is returned. It is typically used when constructing
management frames from within the software 802.11 stack.
The
ieee80211_add_xrates() utility function is used to add the
extended rate set element
*rs to the frame
frm. A pointer to the location in the buffer after the
addition of the rate set is returned. It is typically used when constructing
management frames from within the software 802.11 stack in 802.11g mode.
The
ieee80211_send_mgmt() function transmits a management
frame on the interface
ic to the destination node
ni of type
type.
The argument
arg specifies either a sequence number for
authentication operations, a status code for [re]association operations, or a
reason for deauthentication and deassociation operations.
Nodes other than
ic_bss have their reference count
incremented to reflect their use for an indeterminate amount of time. This
reference is freed when the function returns.
The function returns 0 if successful; if temporary buffer space is not
available, the function returns
ENOMEM
.
SEE ALSO
ieee80211(9)
HISTORY
The
ieee80211 series of functions first appeared in
NetBSD 1.5, and were later ported to
FreeBSD 4.6.
AUTHORS
This man page was written by
Bruce M. Simpson
<
bms@FreeBSD.org> and
Darron Broad
<
darron@kewl.org>.