| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
| |
o The ieee80211_media_status() function updates the ifi_link_state field
and calls rt_ifmsg() to notify listeners on the routing socket.
Approved by: sam
|
|
|
|
|
|
| |
include FCS; if you want to provide it you can put it in the header.
Submitted by: David Young
|
|
|
|
|
|
| |
inclusion of <sys/malloc.h>
Submitted by: bde
|
|
|
|
|
|
| |
that's coming soon
Obtained from: madwifi
|
|
|
|
| |
allocation routines
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
refcnt on the node but left it in the node table. This allows the node table
to hold the results of scanned ap's but for ibss scans left nodes w/o any
driver-private state setup and/or a bad refcnt (when the nodes were timed
out they were prematurely discarded). Now we treat nodes identified for ap
scanning as before but force nodes discovered when scanning for ibss neighbors
to have complete/proper state and hold the refcnt on the node. Any other
nodes created because of these frames are discarded directly (need to optimize
this case to eliminate various work that's immediately discarded).
|
|
|
|
|
|
|
|
|
|
|
|
| |
o remove IEEE80211_C_RCVMGT capability
o on transmit craft new nodes as needed using new ieee80211_find_txnode routine
o add ieee80211_find_txnode routine to lookup a node by mac address and
if not present create one when operating in ibss/ahdemo mode; new nodes
are dup'd from bss and the driver is told to treat the node as if a new
association has been created so driver-private state (e.g. rate control
handling) is setup
Obtained from: netbsd (basic idea)
|
|
|
|
|
| |
conditionally doing an unref if operating in adhoc mode which turns
out to be wrong
|
|
|
|
|
|
|
|
| |
blindy copying the node contents; this turns out to be a bad idea as we
add more state in the node for things like WPA
o track node allocation failures in ieee80211_dup_bss instead of the callers
Obtained from: madwifi
|
|
|
|
|
|
| |
of each caller
Obtained from: madwifi
|
|
|
|
| |
Obtained from: madwifi
|
|
|
|
|
|
| |
in background/incremental scanning
Obtained from: madwifi
|
| |
|
|
|
|
|
|
|
| |
variable to improve code legibility since we're going to use it more
in forthcoming mods
Obtained from: madwifi
|
|
|
|
|
|
| |
elements is more meaningful (will add more with WPA merge)
Obtained from: madwifi
|
|
|
|
|
|
| |
reference for consistency (explicit refcounting is discouraged)
Obtained from: madwifi
|
|
|
|
|
|
| |
driver is responsible for that
Obtained from: madwifi
|
|
|
|
|
| |
works around a protocol/firmware problem with some versions found
in hermes/prism cards
|
| |
|
|
|
|
|
|
|
| |
o add support for controlling the 11g protection mechanism used
to protect OFDM frames in a mixed 11b/g network
Reviewed by: imp
|
|
|
|
|
|
| |
up (IFF_UP). This eliminates extraneous AP scanning.
Reviewed by: imp
|
| |
|
|
|
|
|
|
| |
active scan is completed just as WI_RID_READ_APS.
This fixes wicontrol -L for ath(4) and awi(4) to have results even if
the driver cannot associate any APs.
|
|
|
|
|
| |
Also some if_media constants to indicate operational mode are changed
to bitmasks to reduce diffs from NetBSD.
|
|
|
|
| |
Note that the min is actually constrained to IF_MINMTU by the if layer.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
o #ifdef _KERNEL the fallback definition for DLT_IEEE802_11_RADIO
o fix many comments
o rename antenna stuff and fix units/reference signal
o change IEEE80211_RADIOTAP_DBM_TX_POWER from unsigned 16-bit value
to a signed 8-bit value
o change IEEE80211_RADIOTAP_FLAGS from 16 bits to 8 bits to simplify
padding requirements
o drop IEEE80211_RADIOTAP_TIME
o change IEEE80211_RADIOTAP_ANTENNA from 16 bits to 8 bits
o drop IEEE80211_RADIOTAP_PAD
o add channel flag definitions for outside the kernel so radiotap
doesn't depend on stuff in ieee80211*.h
Obtained from: NetBSD
|
|
|
|
|
|
|
| |
o reject scan requests for a device that isn't marked up
This fixes a problem where requesting a scan before marking the device
up would cause a panic because the current channel was set to "any" (0xffff).
|
|
|
|
| |
Submitted by: Len Widra
|
|
|
|
| |
root from reading the wireless card's WEP keys, but allows non-root.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
if_xname, if_dname, and if_dunit. if_xname is the name of the interface
and if_dname/unit are the driver name and instance.
This change paves the way for interface renaming and enhanced pseudo
device creation and configuration symantics.
Approved By: re (in principle)
Reviewed By: njl, imp
Tested On: i386, amd64, sparc64
Obtained From: NetBSD (if_xname)
|
|
|
|
| |
matter how small...")
|
|
|
|
| |
to add per-node statistics
|
| |
|
| |
|
| |
|
|
|
|
|
| |
o use recv mgmt capability to decide if outbound frames should be
discarded if no node table entry is present
|
|
|
|
| |
change to different locking strategies
|
|
|
|
|
|
|
|
| |
node lock while sending a management frame as this will potentially
result in a LOR with a driver lock. This doesn't happen for the
Atheros driver but does for the wi driver. Use a generation number
to help process each node once when scanning the node table and
drop the node lock if we need to timeout a node and send a frame.
|
|
|
|
|
|
|
| |
AP has basic rates that we do not support then ignore them instead
of marking the rate set in error.
This fixes an 11b station associating with an 11g/b AP.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
things than record a single value.
o add a per-node method for returning the "current RSSI" for a node
o create a default method that returns ni_rssi which is the rssi for
the last received frame
o use the per-node "get rssi" method to return data for the RID's
submitted by wicontrol, et. al.
Loosely based on work by Tom Marshall <tommy@home.tig-grr.com> for MADWIFI.
|
|
|
|
|
|
|
|
| |
In particular, let drivers send up control frames so we can dispatch
them to bpf in monitor mode.
This is the first (small) step to adding more functionality such as
power save mode.
|
|
|
|
|
| |
we use to define IEEE80211_MIN_LEN; the minimal length for frames drivers
may pass up into the 802.11 layer
|
|
|
|
|
|
|
|
| |
capabilities for outbound management frames. But beware of sending
this when operating on 5GHz channels; some 11a AP's reject association
requests if this bit is set in the capabilities listed.
Obtained from: MADWIFI (with modifications)
|
|
|
|
|
|
| |
regardless of the operating mode
Obtained from: MADWIFI
|
|
|
|
|
|
|
|
| |
type belongs in net/bpf.h but we keep it here for the moment.
P:
Submittep by:
Obtained from: David Young <dyoung@pobox.com>
|
|
|
|
|
|
| |
o add an assertion to check the max possible packet size
Noticed by: David Young <dyoung@pobox.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
count handling of station entries in hostap mode:
Input path:
o driver is now expected to find the node associated with the
sender of a received frame; use ic_bss if none is located
o driver passes the (referenced) node into ieee80211_input for
use within the wlan module and is responsible for cleaning up
on return
o the antenna state is no longer passed up with each frame; this
is now considered driver-private state and drivers are responsible
for keeping it in the driver-private part of a node
Output path:
Revamp output path for management frames to eliminate redundant
locking that causes problems and to correct reference counting
bogosity that occurs when stations are timed out due to inactivity
(in AP mode). On output the refcnt'd node is stashed in the pkthdr's
recvif field (yech) and retrieved by the driver. This eliminates
an unref/ref scenario and related node table unlock/lock due to the
driver looking up the node. This is particularly important when
stations are timed out as this causes a lock order reversal that
can result in a deadlock. As a byproduct we also reduce the overhead
for sending management frames (minimal). Additional fallout from
this is a change to ieee80211_encap to return a refcn't node for
tieing to the outbound frame. Node refcnts are not reclaimed until
after a frame is completely processed (e.g. in the tx interrupt
handler). This is especially important for timed out stations as
this deref will be the final one causing the node entry to be
reclaimed.
Additional semi-related changes:
o replace m_copym use with m_copypacket (optimization)
o add assert to verify ic_bss is never free'd during normal operation
o add comments explaining calling conventions by drivers for frames
going in each direction
o remove extraneous code that "cannot be executed" (e.g. because
pointers may never be null)
|