#
c2a005a0 |
|
19-Apr-2024 |
Adrian Chadd <adrian@FreeBSD.org> |
net80211: add new ciphers and RSN flags These are the rest of the ciphers and RSN flags from 802.11-2016. * add the rest of the ciphers from 802.11-2016 * add the rest of the RSN flags from 802.11-2016 Of special interest here are the extended key ID field for supporting >1 unicast key (to support seamless rekeying w/out dropping frames) and the MFP (management frame protection) config bits. This is a no-op; no code is using these new fields. (In particular, no code in net80211 uses the RSN capability bits; but that will change when we start on MFP support.) Differential Revision: https://reviews.freebsd.org/D44864
|
#
e85eb4c8 |
|
02-Dec-2023 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: adjust more VHT structures/fields Replace ieee80211_ie_vhtcap with ieee80211_vht_cap and ieee80211_ie_vht_operation with ieee80211_vht_operation. The "ie" version has the two bytes type/length at the beginning which we did not actually use as such (the one place doing did just as unused extra work). Using the non-"ie" versions allows us to re-use them on shared code. Using an enum helps us to not accidentally get unsuppored or unhandled values tough we cannot use it in the struct as we need to ensure the field width. ieee80211_vht_operation is guarded by _KERNEL/WANT_NET80211. While the header is supposed to be exported to user land historically, software such as wpa bring their own structure definitions. For in-tree usage it is only ifconfig which really cares (at least for now). Sponsored by: The FreeBSD Foundation MFC after: 3 days Reviewed by: adrian (earlier), cc Differential Revision: https://reviews.freebsd.org/D42901
|
#
95ee2897 |
|
16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
4d846d26 |
|
10-May-2023 |
Warner Losh <imp@FreeBSD.org> |
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause. Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
|
#
800aa9cd |
|
09-Sep-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
LinuxKPI: 80211 (+net80211): update and cleanup headers Fix types for various struct fields (initially added as int). Move structs and inline functions logically together, e.g., for wowlan. Add more skeleton functions and #defines needed for iwlwifi d3.c in the future. Add struct ieee80211_vht_cap (without "_ie") to net80211 and remove duplicate definitions in LinuxKPI headers now using net80211 structs. For now leave ieee80211_ie_vhtcap in net80211. I am not sure yet if we actually need it as such. That'll be cleaned up with more VHT updates in net80211 in the future. No functional changes in currently compiled code intended. Try to implement ieee80211_action_contains_tpc() as I ran into it with an older iwlwifi chipset. This depends on c994352a8841eb453. Sponsored by: The FreeBSD Foundation MFC after: 2 weeks
|
#
c994352a |
|
07-Sep-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: update (parts of) Action field categories Update to the full list of action field category values based on 802.11-2020 with 11ax extensions and remove one value Reserved nowadays. While here annotate them with descriptions. Also add Spectrum Management and Radio Measurement action field values needed in LinuxKPI. No functional changes. Sponsored by: The FreeBSD Foundation MFC after: 1 week
|
#
fb47649e |
|
31-Aug-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: update (parts of) frame types and subtypes and annotate Update to the full list of frame type and subtype values based on 802.11-2020 with 11ax and 11ay extensions. This includes the 4th type "Extension" (IEEE80211_FC0_TYPE_EXT). While here annotate them with descriptions which should help matching names (as at times things get confusing with LinuxKPI). Also remove some 802.11-1997 values Reserved nowadays. No functional changes. Sponsored by: The FreeBSD Foundation MFC after: 5 days Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D36410
|
#
c9b7e9df |
|
31-Aug-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211 / drivers: rename to IEEE80211_FC0_SUBTYPE_QOS_DATA Going through the Frame (Sub)types the "QOS Data" being called "QOS" scheme leads to a naming conflict for QOS_CFPOLL and QOS_CFACKPOLL (if added). Rename QOS* to QOS_DATA* to avoid the conflict and to also better match the standards name. No functional changes intended. Sponsored by: The FreeBSD Foundation MFC after: 5 days Reviewed by: hselasky Differential Revision: https://reviews.freebsd.org/D36409
|
#
8d371164 |
|
17-Aug-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: LinuxKPI 802.11: harmonize IEEE80211_VHT_MCS_* Rather than defining the same values in two places and having to do conflict resulution on the name in LKPI, change the defines to an enum in net80211. In addition to de-duplication this also gives us value checks in certain cases. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D36250
|
#
2889cbe2 |
|
12-Aug-2022 |
Adrian Chadd <adrian@FreeBSD.org> |
net80211: add an IEEE80211_IS_PROTECTED() macro Summary: This returns whether the given 802.11 frame has the protected bit set. Test Plan: * tested in AP/STA mode * STA mode - local athp/ath10k driver * AP mode - in tree ath driver Subscribers: imp, melifaro, glebius Reviewed by: bz Approved by: bz Differential Revision: https://reviews.freebsd.org/D36183
|
#
a78be09e |
|
28-Jul-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: add more 802.11ac Element IDs Add more Element IDs for VHT (11ac) to complete the current list and we can use them if/as needed. Sposnored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D35977
|
#
4c3684ef |
|
17-Jun-2022 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211 / LinuxKPI: 802.11: add Control Trigger Subframe information Add definitions related to 802.11ax Control Trigger frame format needed for rtw89. MFC after: 3 days
|
#
04e7bb08 |
|
17-Oct-2020 |
Bjoern A. Zeeb <bz@FreeBSD.org> |
net80211: update for (more) VHT160 support Implement two macros IEEE80211_VHTCAP_SUPP_CHAN_WIDTH_IS_160MHZ() and its 80+80 counter part to check in vhtcaps for appropriate levels of support and use the macros throughout the code. Add vht160_chan_ranges/is_vht160_valid_freq and handle analogue to vht80 in various parts of the code. Add ieee80211_add_channel_cbw() which also takes the CBW flag fields and make the former ieee80211_add_channel() a wrapper to it. With the CBW flags we can add HT/VHT channels passing them to getflags() for the 2/5ghz functions. In ifconfig(8) add the regdomain_addchans() support for VHT160 and VHT80P80. With this (+ regdoain.xml updates) VHT160 channels can be configured, listed, and pass regdomain where appropriate. Tested with: iwlwifi Reviewed by: adrian MFC after: 10 days Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D26712
|
#
662c1305 |
|
01-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
net: clean up empty lines in .c and .h files
|
#
83fbae0c |
|
04-Jun-2020 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Add field definition for A-MSDU inside A-MPDU. Now that I have A-MSDU and A-MPDU coexisting together, we need to actually announce if (a) it's permitted and (b) figure out if we should use it when transmitting. This just adds the field; it doesn't yet include it in ADDBA exchanges.
|
#
f280f93d |
|
19-Jan-2019 |
Oleksandr Tymoshenko <gonzo@FreeBSD.org> |
[ifconfig] Print more WPS attributes in verbose "list scan" output - Move WPS related defines to dedicated file - Add handlers for more WPS attributes PR: 217317 Submitted by: J.R. Oldroyd <fbsd@opal.com> MFC after: 3 weeks
|
#
fe267a55 |
|
27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys: general adoption of SPDX licensing ID tags. Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task. The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts. No functional change intended.
|
#
c5bba9da |
|
21-Jan-2017 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
net80211: allow to configure LDPC support Tested with RTL8821AU, STA mode (Tx support only) Reviewed by: adrian Differential Revision: https://reviews.freebsd.org/D9268
|
#
e0812c14 |
|
15-Jan-2017 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] add some more "is this XXX" macros for CTRL and DATA. There's already a macro for MGT.
|
#
5fd74bfa |
|
09-Jan-2017 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] add missing VHTCAP declaration changes. These are required for the recent ieee80211_vht.[ch] changes - they make things start to work with MS() / SM() macros.
|
#
4222790f |
|
06-Jan-2017 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] add some more bits.
|
#
efda3f56 |
|
06-Jan-2017 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Remove duplicate VHTOPMODE configuration bits. These came from Linux mac80211 headers and are configuration bits, not VHTOPMODE field parameters. Whilst here, add the field names for the VHTCAP bits. Tested: * ath10k, 11ac STA mode
|
#
7c87f23e |
|
31-Dec-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] add placeholders for the VHT action frame handling. Upcoming vht support will register send/receive action handlers.
|
#
561da369 |
|
23-Oct-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Add a macro to see if a frame is a management frame or not.
|
#
f3ef2aa1 |
|
13-Oct-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] add some more QoS frame subtypes.
|
#
275b79bd |
|
29-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Add fields to decode uAPSD fields. It turns out that madwifi actually has the basics for uAPSD implemented but it was never ported to FreeBSD. I may eventually port most of the pieces; I'll see how it goes! Obtained from: Madwifi
|
#
e4d96dcf |
|
18-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Add VHT Transmit Power Envelope element - 802.11ac-2013 8.4.2.164 This .. seems inconsistently transmitted from various vendors.
|
#
f3e24d74 |
|
17-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] IE 127 is not MESHEXTCAP, just EXTCAP. It's not a mesh extended capabilities; it's just extended capabilities. This is from 802.11-2012 8.4.2.29 (Extended Capabilities element.)
|
#
e426a812 |
|
17-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
Add initial 802.11ac IEs and fields. This is a subset of what's in the linux 802.11ac implementation. I've verified that the bits that mention an 802.11ac draft are still the same in 802.11ac-2013 and noted it accordingly. This is for the most part one big no-op. Obtained from: 802.11ac-2013.pdf
|
#
42154046 |
|
16-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] Add some more missing IEs. There are a /lot/ more missing; I'll chase these down over time. Obtained from: 802.11-2012 standard
|
#
8abb337a |
|
16-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
Add initial VHT IE's and action codes. Yes, there's more to 802.11ac than this.
|
#
23ed552b |
|
14-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
class -> i_class. Thanks C++. Noticed by: jbeich@
|
#
523210fb |
|
13-Mar-2016 |
Adrian Chadd <adrian@FreeBSD.org> |
[net80211] handle unlisted information elements. This displays the IE names in ifconfig but it doesn't yet decode things. Submitted by: Idwer Vollering <vidwer@gmail.com> Differential Revision: https://reviews.freebsd.org/D3782
|
#
665d5ae9 |
|
18-Feb-2016 |
Andriy Voskoboinyk <avos@FreeBSD.org> |
net80211: add few missing subtype names. - Add definitions for Timing Advertisement and Control Wrapper frames. - Refresh ieee80211_mgt_subtype_name and ieee80211_ctl_subtype_name arrays. - Count Timing Advertisement frames as discarded management frames in all modes. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D5331
|
#
57791228 |
|
21-Sep-2015 |
Adrian Chadd <adrian@FreeBSD.org> |
Define a rateval macro that drivers tend to hard-code. Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Differential Revision: https://reviews.freebsd.org/D3705
|
#
54c8dd3f |
|
26-May-2015 |
Gavin Atkinson <gavin@FreeBSD.org> |
Fix spelling mistake in comment.
|
#
92002144 |
|
25-May-2015 |
Gleb Smirnoff <glebius@FreeBSD.org> |
Make ieee80211broadcastaddr global, so that drivers or other code may use it and not paste.
|
#
c3ebe019 |
|
12-May-2015 |
Adrian Chadd <adrian@FreeBSD.org> |
Do not check sequence number for QoS Null frames; set it for generated QoS Null frames to 0 From IEEE Std. 802.11-2012, 8.3.2.1 "Data frame format", p. 415 (513): "The Sequence Control field for QoS (+)Null frames is ignored by the receiver upon reception." At this moment, any <mode>_input() function interprets them as regular QoS data frames with TID = 0. As a result, stations, that use another TX sequence for QoS Null frames (e.g. wpi(4), where (QoS) Null frames are generated by the firmware), may experience significant packet loss with any other NIC in hostap mode. Tested: * wpi(4) (author) * iwn(4) - Intel 5100, STA mode (me) PR: kern/200128 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com>
|
#
5945b5f5 |
|
08-Jan-2014 |
Kevin Lo <kevlo@FreeBSD.org> |
Rename definition of IEEE80211_FC1_WEP to IEEE80211_FC1_PROTECTED. The origin of WEP comes from IEEE Std 802.11-1997 where it defines whether the frame body of MAC frame has been encrypted using WEP algorithm or not. IEEE Std. 802.11-2007 changes WEP to Protected Frame, indicates whether the frame is protected by a cryptographic encapsulation algorithm. Reviewed by: adrian, rpaulo
|
#
d8df5f3d |
|
25-Jul-2013 |
Rui Paulo <rpaulo@FreeBSD.org> |
Add ieee80211_add_{qos,wpa,rsn}() functions since they are needed by an OpenBSD driver that is being ported to FreeBSD. Reviewed by: adrian
|
#
0cc7a79b |
|
14-Feb-2013 |
Monthadar Al Jaberi <monthadar@FreeBSD.org> |
Mesh: QoS Control field bit flags fix. * The following bit flags where incroccetly defined: o Mesh Control Present o Mesh Power Save Level o RSPI This is now corrected according to Table 8.4 as per IEEE 802.11 2012; Approved by: adrian (mentor)
|
#
2a72e4b2 |
|
08-Aug-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
Fix an incorrect comment.
|
#
9fc85253 |
|
01-May-2012 |
Monthadar Al Jaberi <monthadar@FreeBSD.org> |
Net80211s update: Mesh Gate Announcement and removal of Portal Announcement. * Renamed IEEE80211_ELEMID_MESHPANN to IEEE80211_ELEMID_MESHGANN according to amendment; * Added IEEE80211_IOC_MESH_GATE that controls whether Mesh Gate Announcement is activated or not; * Renamed all flags from Portal to Gate in HWMP frames; * Removed IEEE80211_ACTION_MESHPANN enum cause its part of the Mesh Action category now as per amendment; * Renamed IEEE80211_MESHFLAGS_PORTAL to IEEE80211_MESHFLAGS_GATE in ieee80211_mesh_state flags; * Modified ieee80211_hwmp.c/ieee80211_mesh.c to use new GATE flags; Approved by: adrian
|
#
ebeaa1ad |
|
01-May-2012 |
Monthadar Al Jaberi <monthadar@FreeBSD.org> |
Added Self-protected action category (including MPM). * Added new action category IEEE80211_ACTION_CAT_SELF_PROT which is used by 11s for Mesh Peering Management; * Updated Self protected enum Action codes to start from 1 instead of 0 according to the standard spec; * Removed old and wrong action categories IEEE80211_ACTION_CAT_MESHPEERING; * Modified ieee80211_mesh.c and ieee80211_action.c to use the new action category code; * Added earlier verification code in ieee80211_input; Approved by: adrian
|
#
91216c71 |
|
03-Mar-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
* Introduce new flag for QoS control field; * Change in mesh_input to validate that QoS is set and Mesh Control field is present, also both bytes of the QoS are read; * Moved defragmentation in mesh_input before we try to forward packet as inferred from amendment spec, because Mesh Control field only present in first fragment; * Changed in ieee80211_encap to set QoS subtype and Mesh Control field present, only first fragment have Mesh Control field present bit equal to 1; Submitted by: monthadar@gmail.com
|
#
bdd2a076 |
|
03-Mar-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
* Added IEEE80211_ACTION_CAT_MESH in ieee80211.h as specified amendment spec; * Moved old categories as specified by D4.0 to be action fields of MESH category as specified in amendment spec; * Modified functions to use MESH category and its action fields: + ieee80211_send_action_register + ieee80211_send_action + ieee80211_recv_action_register +ieee80211_recv_action; * Modified ieee80211_hwmp_init and hwmp_send_action so they uses correct action fields as specified in amendment spec; * Modified ieee80211_parse_action so that it verifies MESH frames. * Change Mesh Link Metric to use one information element as amendment spec. Draft 4.0 defined two different information elements for request and response. Submitted by: monthadar@gmail.com
|
#
60084eb4 |
|
07-Feb-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
Update the 802.11s IE numbers to represent the latest 802.11 amendment standard. Submitted by: monthadar@gmail.com Reviewed by: rpaulo
|
#
39b86fdc |
|
05-Feb-2012 |
Adrian Chadd <adrian@FreeBSD.org> |
Update the mesh reason codes to match the latest 802.11s specification. Submitted by: <monthadar@gmail.com> Reviewed by: rpaulo
|
#
32b0e64b |
|
07-Nov-2011 |
Adrian Chadd <adrian@FreeBSD.org> |
Add 802.11h quiet time element support into net80211. This supports both station and hostap modes: * Station mode quiet time element support listens to quiet time IE's and modifies the local quiet time configuration as appropriate; * Hostap mode both obeys the locally configured quiet time period and includes it in beacon frames so stations also can obey as needed. Submitted by: Himali Patel <himali.patel@sibridgetech.com> Sponsored by: Sibridge Technologies
|
#
96283082 |
|
21-Feb-2011 |
Bernhard Schmidt <bschmidt@FreeBSD.org> |
Add a new mgmt subtype "ACTION NO ACK" defined in 802.11n-2009, while here clean up parts of the *_recv_mgmt() functions. - make sure appropriate counters are bumped and debug messages are printed - order the unhandled subtypes by value and add a few missing ones - fix some whitespace nits - remove duplicate code in adhoc_recv_mgmt() - remove a useless comment, probably left in while c&p
|
#
a7d5f7eb |
|
19-Oct-2010 |
Jamie Gritton <jamie@FreeBSD.org> |
A new jail(8) with a configuration file, to replace the work currently done by /etc/rc.d/jail.
|
#
f785216c |
|
28-Sep-2009 |
Rui Paulo <rpaulo@FreeBSD.org> |
Update 802.11s mesh support to draft 3.03. This includes a revised frame format for peering and changes to the PERR frames. Note that this is incompatible with the previous code. Reviewed by: sam Approved by: re (kib)
|
#
c77735e2 |
|
22-Sep-2009 |
Rui Paulo <rpaulo@FreeBSD.org> |
Update 802.11s mesh support to draft 3.03. This includes a revised frame format for peering and changes to the PERR frames. Note that this is incompatible with the previous code. Reviewed by: sam MFC after: 1 week
|
#
59aa14a9 |
|
11-Jul-2009 |
Rui Paulo <rpaulo@FreeBSD.org> |
Implementation of the upcoming Wireless Mesh standard, 802.11s, on the net80211 wireless stack. This work is based on the March 2009 D3.0 draft standard. This standard is expected to become final next year. This includes two main net80211 modules, ieee80211_mesh.c which deals with peer link management, link metric calculation, routing table control and mesh configuration and ieee80211_hwmp.c which deals with the actually routing process on the mesh network. HWMP is the mandatory routing protocol on by the mesh standard, but others, such as RA-OLSR, can be implemented. Authentication and encryption are not implemented. There are several scripts under tools/tools/net80211/scripts that can be used to test different mesh network topologies and they also teach you how to setup a mesh vap (for the impatient: ifconfig wlan0 create wlandev ... wlanmode mesh). A new build option is available: IEEE80211_SUPPORT_MESH and it's enabled by default on GENERIC kernels for i386, amd64, sparc64 and pc98. Drivers that support mesh networks right now are: ath, ral and mwl. More information at: http://wiki.freebsd.org/WifiMesh Please note that this work is experimental. Also, please note that bridging a mesh vap with another network interface is not yet supported. Many thanks to the FreeBSD Foundation for sponsoring this project and to Sam Leffler for his support. Also, I would like to thank Gateworks Corporation for sending me a Cambria board which was used during the development of this project. Reviewed by: sam Approved by: re (kensmith) Obtained from: projects/mesh11s
|
#
32bdd57b |
|
09-Jun-2009 |
Sam Leffler <sam@FreeBSD.org> |
Correct ieee80211_gettid: o don't increment extracted tid, this was a vestige of IEEE80211_NONQOS_TID being defined as 0 (w/ real tid's +1) o handle 4-address frames (add IEEE80211_IS_DSTODS to check if an 802.11 header is DSTODS) Submitted by: cbzimmer Reviewed by: avatar
|
#
1dadcead |
|
05-Jun-2009 |
Sam Leffler <sam@FreeBSD.org> |
o correct/add action frame categories o add IEEE80211_STATUS_MISSING_HT_CAPS, added in 11n D3.0 spec
|
#
c70761e6 |
|
04-Jun-2009 |
Sam Leffler <sam@FreeBSD.org> |
o station mode channel switch support o IEEE80211_IOC_CHANSWITCH fixups: - restrict to hostap vaps - return EOPNOTSUPP instead of EINVAL when applied to !hostap vap or to a vap w/o 11h enabled - interpret count of 0 to mean cancel the current CSA Reviewed by: rpaulo, avatar
|
#
1fdf2b50 |
|
18-May-2009 |
Sam Leffler <sam@FreeBSD.org> |
add block ack frame id
|
#
dca68715 |
|
02-May-2009 |
Sam Leffler <sam@FreeBSD.org> |
promote ieee80211_seq typedef
|
#
9d90db93 |
|
26-Mar-2009 |
Sam Leffler <sam@FreeBSD.org> |
o move tdma+superg protocol defs out of public view o add #ifdef _KERNEL to superg+tdma include files so they can be used by user code to get the protocol defs
|
#
2bc3ce77 |
|
18-Mar-2009 |
Sam Leffler <sam@FreeBSD.org> |
Minor cleanups of tdma protocol handling: o break out version-related code to simplify rev'ing the protocol o add parameter validation macros so checks that appear multiple places are consistent (and easy to change) o add protocol version check when looking for a scan candidate o improve scan debug output format o rewrite beacon update handling to calculate a bitmask of changed values and pass that down through the driver callback so drivers can optimize work o do slot bounds check before use when parsing received beacons
|
#
3d13a955 |
|
27-Jan-2009 |
Sam Leffler <sam@FreeBSD.org> |
o make %b msg bit defines public (to user apps too) o rename IEEE80211_C_CRYPTO_BITS to IEEE80211_CRYPTO_BITS
|
#
10ad9a77 |
|
08-Jan-2009 |
Sam Leffler <sam@FreeBSD.org> |
TDMA support for long distance point-to-point links using ath devices: o add net80211 support for a tdma vap that is built on top of the existing adhoc-demo support o add tdma scheduling of frame transmission to the ath driver; it's conceivable other devices might be capable of this too in which case they can make use of the 802.11 protocol additions etc. o add minor bits to user tools that need to know: ifconfig to setup and configure, new statistics in athstats, and new debug mask bits While the architecture can support >2 slots in a TDMA BSS the current design is intended (and tested) for only 2 slots. Sponsored by: Intel
|
#
d7f03759 |
|
19-Oct-2008 |
Ulf Lilleengen <lulf@FreeBSD.org> |
- Import the HEAD csup code which is the basis for the cvsmode work.
|
#
231bb1bc |
|
21-Sep-2008 |
Sam Leffler <sam@FreeBSD.org> |
o fix spelling of EOSP o correct SMPS values
|
#
8524d591 |
|
06-Sep-2008 |
Sam Leffler <sam@FreeBSD.org> |
o fix BAR definitions o add 11e reason codes
|
#
ba0c7577 |
|
06-Aug-2008 |
Sam Leffler <sam@FreeBSD.org> |
add WPS oui Submitted by: "Chuck Tuffli" <chuck@tuffli.net> MFC after: 3 days
|
#
e5d6bfc3 |
|
11-May-2008 |
Sam Leffler <sam@FreeBSD.org> |
add PLCP service bit definitions
|
#
b032f27c |
|
20-Apr-2008 |
Sam Leffler <sam@FreeBSD.org> |
Multi-bss (aka vap) support for 802.11 devices. Note this includes changes to all drivers and moves some device firmware loading to use firmware(9) and a separate module (e.g. ral). Also there no longer are separate wlan_scan* modules; this functionality is now bundled into the wlan module. Supported by: Hobnob and Marvell Reviewed by: many Obtained from: Atheros (some bits)
|
#
d4a401b6 |
|
22-Nov-2007 |
Sam Leffler <sam@FreeBSD.org> |
correct TID_TO_WME_AC handling of BE MFC after: 3 days
|
#
12c1df4b |
|
14-Nov-2007 |
Sam Leffler <sam@FreeBSD.org> |
correct MIMO power save action frame format; this one really is from the D2.04 spec MFC after: 3 days
|
#
1b6167d2 |
|
01-Nov-2007 |
Sam Leffler <sam@FreeBSD.org> |
sync 11n support with vap code base; many changes based on interop testing with all major vendors MFC after: 1 week
|
#
eddedabe |
|
05-Sep-2007 |
Sam Leffler <sam@FreeBSD.org> |
Miscellaneous fixups to 802.11 defs: o update 11n definitions to D2.0 spec o add IEEE80211_CAPINFO_SPECTRUM_MGMT for DFS support o add CSA ie definition for DFS support o purge some unused definitions o correct 802.11 reason and status codes o correct reason code returned when a sta tries to associate to an ap operating with WPA/RSN but without a WPA/RSN ie Reviewed by: thompsa, avatar Approved by: re (blanket wireless)
|
#
68e8e04e |
|
10-Jun-2007 |
Sam Leffler <sam@FreeBSD.org> |
Update 802.11 wireless support: o major overhaul of the way channels are handled: channels are now fully enumerated and uniquely identify the operating characteristics; these changes are visible to user applications which require changes o make scanning support independent of the state machine to enable background scanning and roaming o move scanning support into loadable modules based on the operating mode to enable different policies and reduce the memory footprint on systems w/ constrained resources o add background scanning in station mode (no support for adhoc/ibss mode yet) o significantly speedup sta mode scanning with a variety of techniques o add roaming support when background scanning is supported; for now we use a simple algorithm to trigger a roam: we threshold the rssi and tx rate, if either drops too low we try to roam to a new ap o add tx fragmentation support o add first cut at 802.11n support: this code works with forthcoming drivers but is incomplete; it's included now to establish a baseline for other drivers to be developed and for user applications o adjust max_linkhdr et. al. to reflect 802.11 requirements; this eliminates prepending mbufs for traffic generated locally o add support for Atheros protocol extensions; mainly the fast frames encapsulation (note this can be used with any card that can tx+rx large frames correctly) o add sta support for ap's that beacon both WPA1+2 support o change all data types from bsd-style to posix-style o propagate noise floor data from drivers to net80211 and on to user apps o correct various issues in the sta mode state machine related to handling authentication and association failures o enable the addition of sta mode power save support for drivers that need net80211 support (not in this commit) o remove old WI compatibility ioctls (wicontrol is officially dead) o change the data structures returned for get sta info and get scan results so future additions will not break user apps o fixed tx rate is now maintained internally as an ieee rate and not an index into the rate set; this needs to be extended to deal with multi-mode operation o add extended channel specifications to radiotap to enable 11n sniffing Drivers: o ath: add support for bg scanning, tx fragmentation, fast frames, dynamic turbo (lightly tested), 11n (sniffing only and needs new hal) o awi: compile tested only o ndis: lightly tested o ipw: lightly tested o iwi: add support for bg scanning (well tested but may have some rough edges) o ral, ural, rum: add suppoort for bg scanning, calibrate rssi data o wi: lightly tested This work is based on contributions by Atheros, kmacy, sephe, thompsa, mlaier, kevlo, and others. Much of the scanning work was supported by Atheros. The 11n work was supported by Marvell.
|
#
ae8b7333 |
|
05-Jun-2007 |
Sam Leffler <sam@FreeBSD.org> |
copyright updates: o update to include 2007 o switch back to a 2-clause bsd-only license Reviewed by: onoe
|
#
f4fcdb0e |
|
01-Dec-2006 |
Warner Losh <imp@FreeBSD.org> |
Fix packing on the country band descriptor. No real change since this is unused. Reviewed by: sam
|
#
202b0d11 |
|
25-Jul-2006 |
Sam Leffler <sam@FreeBSD.org> |
o move min/max beacon interval and dtim period to public location o add min/max beacon miss threshold settings o delete IEEE80211_SWBMISS_THRESHOLD, it was never used MFC after: 2 weeks
|
#
33acb1ce |
|
22-Jul-2005 |
Sam Leffler <sam@FreeBSD.org> |
o add IEEE80211_FRAG_DEFAULT o move default settings for RTS and frag thresholds to ieee80211_var.h
|
#
7268fa64 |
|
09-Jun-2005 |
Sam Leffler <sam@FreeBSD.org> |
move AID implementation defines from the protocol definitions to where they are used
|
#
db966c8b |
|
31-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
remove netbsd rcsid lines; they are way out of date and we appear to be diverging too much to make tracking these files worthwhile
|
#
1f1d7810 |
|
31-Dec-2004 |
Sam Leffler <sam@FreeBSD.org> |
bump copyright for 2005
|
#
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 plugin framework, and access control plugin frameowrk.
|
#
f3fc4ae5 |
|
05-Apr-2004 |
Sam Leffler <sam@FreeBSD.org> |
add definitions for WME, WPA (and WPA2), and miscellaneous other stuff that's coming soon Obtained from: madwifi
|
#
6f161f03 |
|
12-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.
|
#
993338b6 |
|
15-Sep-2003 |
Sam Leffler <sam@FreeBSD.org> |
add definitions for various control frames and a minimum-sized frame that we use to define IEEE80211_MIN_LEN; the minimal length for frames drivers may pass up into the 802.11 layer
|
#
7535e66a |
|
26-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 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...
|