#
b5d4660f |
| 05-Jul-2005 |
Sam Leffler <sam@FreeBSD.org> |
o when setting a wpa key, hold a ref on the bss node; fixes a ref cnt leak o make unicast key handling on delete identical to set o change legacy wep key api to reset the 802.11 state machine for
o when setting a wpa key, hold a ref on the bss node; fixes a ref cnt leak o make unicast key handling on delete identical to set o change legacy wep key api to reset the 802.11 state machine for backwards compatibility
Reviewed by: avatar Approved by: re (scottl)
show more ...
|
#
fc74a9f9 |
| 10-Jun-2005 |
Brooks Davis <brooks@FreeBSD.org> |
Stop embedding struct ifnet at the top of driver softcs. Instead the struct ifnet or the layer 2 common structure it was embedded in have been replaced with a struct ifnet pointer to be filled by a c
Stop embedding struct ifnet at the top of driver softcs. Instead the struct ifnet or the layer 2 common structure it was embedded in have been replaced with a struct ifnet pointer to be filled by a call to the new function, if_alloc(). The layer 2 common structure is also allocated via if_alloc() based on the interface type. It is hung off the new struct ifnet member, if_l2com.
This change removes the size of these structures from the kernel ABI and will allow us to better manage them as interfaces come and go.
Other changes of note: - Struct arpcom is no longer referenced in normal interface code. Instead the Ethernet address is accessed via the IFP2ENADDR() macro. To enforce this ac_enaddr has been renamed to _ac_enaddr. - The second argument to ether_ifattach is now always the mac address from driver private storage rather than sometimes being ac_enaddr.
Reviewed by: sobomax, sam
show more ...
|
#
f02a0bd2 |
| 08-Jun-2005 |
Sam Leffler <sam@FreeBSD.org> |
Change the MLME ASSOCIATE ioctl to accept either a ssid, a bssid, or a bssid+ssid. This is needed for later versions of wpa_supplicant and for forthcoming addons to wpa_supplicant.
Note this is an a
Change the MLME ASSOCIATE ioctl to accept either a ssid, a bssid, or a bssid+ssid. This is needed for later versions of wpa_supplicant and for forthcoming addons to wpa_supplicant.
Note this is an api change and applications must be rebuilt.
show more ...
|
Revision tags: release/5.4.0_cvs, release/5.4.0 |
|
#
dd70e17b |
| 12-Apr-2005 |
Sam Leffler <sam@FreeBSD.org> |
Revise crypto api lightly to improve group key handling: o don't pre-assign key index to the global key table entries so device has a chance to decide what to use o make ieee80211_crypto_newkey tak
Revise crypto api lightly to improve group key handling: o don't pre-assign key index to the global key table entries so device has a chance to decide what to use o make ieee80211_crypto_newkey take the desired flags as an argument instead of wacking the key structure directly; this eliminates a bunch of code warts o add a new flag IEEE80211_KEY_GROUP to indicate a key is a WPA Group key so devices don't need to guess (temporarily add this flag in the ioctl code until we can get wpa_supplicant+hostapd updated) o shuffle IEEE80211_KEY_* bits to move flags used internally to the high nibble of the flags word
Reviewed by: Tai-hwa Liang
show more ...
|
#
c788ca3e |
| 03-Mar-2005 |
Bill Paul <wpaul@FreeBSD.org> |
Recently, it was reported to me that you could provoke a double fault panic with the NDISulator if you did "ifconfig ndis0 10.0.0.1/24," whereas "ifconfig ndis0 10.0.0.1/24 up" worked fine. The doubl
Recently, it was reported to me that you could provoke a double fault panic with the NDISulator if you did "ifconfig ndis0 10.0.0.1/24," whereas "ifconfig ndis0 10.0.0.1/24 up" worked fine. The double fault was caused by the ifconfig thread running out of kernel stack space. (This was partly due to the NDIsulator using a couple of big buffers on the stack, but even after fixing that the double fault persisted.)
It turns out that ndis_init() is called in both cases, but in the first case the code path passes through ieee80211_ioctl(), and it turns out ieee80211_ioctl() consumes a whopping 2400 bytes of stack space. Apparently, gcc -O2 causes the ieee80211_ioctl_get80211() routine to be inlined into ieee80211_ioctl(), and for some reason which I do not fully understand, this causes ieee80211_ioctl() to consume an extra 2K of stack space.
To prevent this overly agressive optimization, ieee80211_ioctl_get80211() is now declared with __attribute__ ((noinline)). With this change, ieee80211_ioctl() now only reserves about 200 bytes of stack instead of 2400.
show more ...
|
#
acc4f7f5 |
| 24-Jan-2005 |
Sam Leffler <sam@FreeBSD.org> |
statically allocate the station/neighbor node table; the deferred allocation scheme introduced a race condition during device state transitions
|
Revision tags: release/4.11.0_cvs, release/4.11.0 |
|
#
1f1d7810 |
| 31-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
bump copyright for 2005
|
#
380c5fa9 |
| 31-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
accept IEEE80211_KEYIX_NONE for a default tx key
|
#
b8d2606b |
| 10-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
fix wep key seting: ENETRESET is the code to return to signal the driver should push software state to the hardware (was ERESTART which caused the system call to be retried)
Submitted by: Tor Egge
|
#
8a1b9b6a |
| 08-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
Update 802.11 support; too much new functionality to fully describe here but it includes completed 802.11g, WPA, 802.11i, 802.1x, WME/WMM, AP-side power-save, crypto plugin framework, authenticator p
Update 802.11 support; too much new functionality to fully describe here but it includes completed 802.11g, WPA, 802.11i, 802.1x, WME/WMM, AP-side power-save, crypto plugin framework, authenticator plugin framework, and access control plugin frameowrk.
show more ...
|
Revision tags: release/5.3.0_cvs, release/5.3.0, release/4.10.0_cvs, release/4.10.0 |
|
#
2e79ca97 |
| 31-Mar-2004 |
Sam Leffler <sam@FreeBSD.org> |
o add support for controlling the power of transmitted frames o add support for controlling the 11g protection mechanism used to protect OFDM frames in a mixed 11b/g network
Reviewed by: imp
|
#
b2e95691 |
| 31-Mar-2004 |
Sam Leffler <sam@FreeBSD.org> |
Only call if_init when doing SIOCSIFADDR if the interface is not marked up (IFF_UP). This eliminates extraneous AP scanning.
Reviewed by: imp
|
Revision tags: release/5.2.1_cvs, release/5.2.1 |
|
#
e249fdbe |
| 19-Jan-2004 |
Atsushi Onoe <onoe@FreeBSD.org> |
Change WI_RID_SCAN_RES compatibility interface to return the result after 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 d
Change WI_RID_SCAN_RES compatibility interface to return the result after 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.
show more ...
|
#
6f161f03 |
| 13-Jan-2004 |
Sam Leffler <sam@FreeBSD.org> |
Handle SIOCSIFMTU ioctl directly so we can apply 802.11-specific bounds. Note that the min is actually constrained to IF_MINMTU by the if layer.
|
Revision tags: release/5.2.0_cvs, release/5.2.0 |
|
#
93685685 |
| 13-Nov-2003 |
Sam Leffler <sam@FreeBSD.org> |
o insure the current channel is in a good state before starting an AP scan o reject scan requests for a device that isn't marked up
This fixes a problem where requesting a scan before marking the de
o insure the current channel is in a good state before starting an AP scan 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).
show more ...
|
#
5c8bb90b |
| 05-Nov-2003 |
Brian Feldman <green@FreeBSD.org> |
Fix a reversed suser(9) in SIOCG80211:IEEE80211_IOC_WEPKEY which prevents root from reading the wireless card's WEP keys, but allows non-root.
|
Revision tags: release/4.9.0_cvs, release/4.9.0 |
|
#
1be50176 |
| 18-Oct-2003 |
Sam Leffler <sam@FreeBSD.org> |
add statistics for all failures and/or abnormal events; still need to add per-node statistics
|
#
13604e6b |
| 26-Sep-2003 |
Sam Leffler <sam@FreeBSD.org> |
correct spelling of IEEE80211_IOC_RTSTHRESHOLD
|
#
d1e61976 |
| 16-Sep-2003 |
Sam Leffler <sam@FreeBSD.org> |
Generalize the per-node RSSI data so drivers can do more interesting 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
Generalize the per-node RSSI data so drivers can do more interesting 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.
show more ...
|
#
a11c9a5c |
| 20-Jul-2003 |
Sam Leffler <sam@FreeBSD.org> |
o change ieee80211_new_state handling to use a proper method that drivers override in their sub-class; this eliminates the hack of interpreting the EINPROGRESS return value to mean "don't do any
o change ieee80211_new_state handling to use a proper method that drivers override in their sub-class; this eliminates the hack of interpreting the EINPROGRESS return value to mean "don't do any of the normal work" o correct active scanning so the first channel is only scanned once and so per-channel passive mode is properly honored o expose 802.11 FSM state names so every driver doesn't keep a private copy o eliminate node parameter to ieee80211_begin_scan; it was not being used
show more ...
|
#
b9ee58c4 |
| 29-Jun-2003 |
Sam Leffler <sam@FreeBSD.org> |
use proper length to copy data for WI_RID_DESIRED_SSID (was smashing ic_des_chan that immediately follows)
|
#
7535e66a |
| 27-Jun-2003 |
Sam Leffler <sam@FreeBSD.org> |
revise copyright notices per discussion with Atsushi Onoe <onoe@sm.sony.co.jp>
|
#
1a1e1d21 |
| 23-Jun-2003 |
Sam Leffler <sam@FreeBSD.org> |
new 802.11 layer:
o code reorg (relative to old netbsd-derived code) for future growth o drivers now specify available channels and rates and 802.11 layer handles almost all ifmedia actions o mult
new 802.11 layer:
o code reorg (relative to old netbsd-derived code) for future growth o drivers now specify available channels and rates and 802.11 layer handles almost all ifmedia actions o multi-mode support for 11a/b/g devices o 11g protocol additions (incomplete) o new element id additions (for other than 11g) o node/station table redone for proper locking and to eliminate driver incestuousness o split device flags and capabilities to reduce confusion and provide room for expansion o incomplete power management infrastructure (need to revisit) o incomplete hooks for software retry o more...
show more ...
|