1. 07 5月, 2009 1 次提交
  2. 23 4月, 2009 7 次提交
  3. 16 4月, 2009 2 次提交
  4. 28 3月, 2009 3 次提交
    • J
      mac80211: remove mixed-cell and userspace MLME code · 7986cf95
      Johannes Berg 提交于
      Neither can currently be set from userspace, so there's no
      regression potential, and neither will be supported from
      userspace since the new userspace APIs allow the SME, which
      is in userspace, to control all we need.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      7986cf95
    • J
      nl80211: Add MLME primitives to support external SME · 636a5d36
      Jouni Malinen 提交于
      This patch adds new nl80211 commands to allow user space to request
      authentication and association (and also deauthentication and
      disassociation). The commands are structured to allow separate
      authentication and association steps, i.e., the interface between
      kernel and user space is similar to the MLME SAP interface in IEEE
      802.11 standard and an user space application takes the role of the
      SME.
      
      The patch introduces MLME-AUTHENTICATE.request,
      MLME-{,RE}ASSOCIATE.request, MLME-DEAUTHENTICATE.request, and
      MLME-DISASSOCIATE.request primitives. The authentication and
      association commands request the actual operations in two steps
      (assuming the driver supports this; if not, separate authentication
      step is skipped; this could end up being a separate "connect"
      command).
      
      The initial implementation for mac80211 uses the current
      net/mac80211/mlme.c for actual sending and processing of management
      frames and the new nl80211 commands will just stop the current state
      machine from moving automatically from authentication to association.
      Future cleanup may move more of the MLME operations into cfg80211.
      
      The goal of this design is to provide more control of authentication and
      association process to user space without having to move the full MLME
      implementation. This should be enough to allow IEEE 802.11r FT protocol
      and 802.11s SAE authentication to be implemented. Obviously, this will
      also bring the extra benefit of not having to use WEXT for association
      requests with mac80211. An example implementation of a user space SME
      using the new nl80211 commands is available for wpa_supplicant.
      
      This patch is enough to get IEEE 802.11r FT protocol working with
      over-the-air mechanism (over-the-DS will need additional MLME
      primitives for handling the FT Action frames).
      Signed-off-by: NJouni Malinen <j@w1.fi>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      636a5d36
    • V
  5. 06 3月, 2009 1 次提交
  6. 28 2月, 2009 3 次提交
    • J
      mac80211/cfg80211: move iwrange handler to cfg80211 · 4aa188e1
      Johannes Berg 提交于
      The previous patch made cfg80211 generally aware of the signal
      type a given hardware will give, so now it can implement
      SIOCGIWRANGE itself, removing more wext stuff from mac80211.
      Might need to be a little more parametrized once we have
      more hardware using cfg80211 and new hardware capabilities.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      4aa188e1
    • J
      cfg80211/mac80211: fill qual.qual value/adjust max_qual.qual · a77b8552
      Johannes Berg 提交于
      Due to various bugs in the software stack we end up having
      to fill qual.qual; level should be used, but wpa_supplicant
      doesn't properly ignore qual.qual, NM should use qual.level
      regardless of that because qual.qual is 0 but doesn't handle
      IW_QUAL_DBM right now.
      
      So fill qual.qual with the qual.level value clamped to
      -110..-40 dBm or just the regular 'unspecified' signal level.
      This requires a mac80211 change to properly announce the
      max_qual.qual and avg_qual.qual values.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      a77b8552
    • J
      mac80211: split IBSS/managed code · 46900298
      Johannes Berg 提交于
      This patch splits out the ibss code and data from managed (station) mode.
      The reason to do this is to better separate the state machines, and have
      the code be contained better so it gets easier to determine what exactly
      a given change will affect, that in turn makes it easier to understand.
      
      This is quite some churn, especially because I split sdata->u.sta into
      sdata->u.mgd and sdata->u.ibss, but I think it's easier to maintain that
      way. I've also shuffled around some code -- null function sending is only
      applicable to managed interfaces so put that into that file, some other
      functions are needed from various places so put them into util, and also
      rearranged the prototypes in ieee80211_i.h accordingly.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      46900298
  7. 14 2月, 2009 3 次提交
  8. 10 2月, 2009 1 次提交
  9. 31 1月, 2009 1 次提交
  10. 30 1月, 2009 13 次提交
  11. 20 12月, 2008 2 次提交
    • K
      mac80211: implement dynamic power save · 520eb820
      Kalle Valo 提交于
      This patch implements dynamic power save for mac80211. Basically it
      means enabling power save mode after an idle period. Implementing it
      dynamically gives a good compromise of low power consumption and low
      latency. Some hardware have support for this in firmware, but some
      require the host to do it.
      
      The dynamic power save is implemented by adding an timeout to
      ieee80211_subif_start_xmit(). The timeout can be enabled from userspace
      with Wireless Extensions. For example, the command below enables the
      dynamic power save and sets the time timeout to 500 ms:
      
      iwconfig wlan0 power timeout 500m
      
      Power save now only works with devices which handle power save in firmware.
      It's also disabled by default and the heuristics when and how to enable is
      considered as a policy decision and will be left for the userspace to handle.
      In case the firmware has support for this, drivers can disable this feature
      with IEEE80211_HW_NO_STACK_DYNAMIC_PS.
      
      Big thanks to Johannes Berg for the help with the design and code.
      Signed-off-by: NKalle Valo <kalle.valo@nokia.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      520eb820
    • K
      mac80211: enable IEEE80211_CONF_PS only when associated · e0cb686f
      Kalle Valo 提交于
      Also disable power save when disassociated. It makes no sense to have
      power save enabled while disassociated.
      
      iwlwifi seems to have this check in the driver, but it's better to do this
      in mac80211 instead.
      Signed-off-by: NKalle Valo <kalle.valo@nokia.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      e0cb686f
  12. 13 12月, 2008 2 次提交
    • J
      mac80211: Disable requests for new scans in AP mode · b7a530d8
      Jouni Malinen 提交于
      AP mode operations are seriously affected if mac80211 runs through a
      multi-second scan while the AP is trying to send Beacon frames on the
      operation channel. While this could be implemented in a way that does
      not cause too many problems, it is not very simple and will require
      synchronization with Beacon frame scheduling in the drivers (scan one
      channel at a time between Beacon frames). Furthermore, such scanning
      takes quite a bit longer time and existing userspace applications
      would be likely to timeout while waiting for the results.
      
      For now, just refuse requests for new scans (SIOCSIWSCAN) when in AP
      mode. In practice, this moves the rejection from iwl* drivers into
      mac80211 to make it apply to every mac80211-based driver.
      
      This issue shows up in associated stations getting disconnected when
      something (e.g., Network Manager) requests a scan while the interface
      is in AP mode. When doing this continuously (e.g., NM does it every 120
      seconds), the network gets close to useless.
      Signed-off-by: NJouni Malinen <jouni.malinen@atheros.com>
      Acked-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      b7a530d8
    • J
      mac80211: remove fragmentation offload functionality · f546638c
      Johannes Berg 提交于
      There's no driver that actually does fragmentation on the
      device, and the callback is buggy (when it returns an error,
      mac80211's fragmentation status is changed so reading the
      frag threshold from userspace reads the new value despite
      the error). Let's just remove it, if we really find some
      hardware supporting it we can add it back later.
      Signed-off-by: NJohannes Berg <johannes@sipsolutions.net>
      Signed-off-by: NJohn W. Linville <linville@tuxdriver.com>
      f546638c
  13. 05 12月, 2008 1 次提交