1. 15 Jan, 2015 1 commit
  2. 14 Jan, 2015 1 commit
  3. 06 Jan, 2015 1 commit
  4. 17 Dec, 2014 1 commit
  5. 25 Nov, 2014 1 commit
  6. 19 Nov, 2014 5 commits
  7. 04 Nov, 2014 4 commits
    • Eliad Peller's avatar
      mac80211: replace restart_complete() with reconfig_complete() · cf2c92d8
      Eliad Peller authored
      Drivers might want to know also when mac80211 has
      completed reconfiguring after resume (e.g. in order
      to know when frames can be passed to mac80211).
      Rename restart_complete() to a more-generic reconfig_complete(),
      and add a new enum to indicate the reconfiguration type.
      Update the current users with the new prototype.
      Signed-off-by: default avatarEliad Peller <eliadx.peller@intel.com>
      Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    • Johannes Berg's avatar
      mac80211: handle RIC data element in reassociation request · 8ed28747
      Johannes Berg authored
      When the RIC data element (RDE) is included in the IEs coming
      from userspace for an association request, its handling is
      currently broken as any IEs that are contained within it would
      be split off from it and inserted again after all the IEs that
      mac80211 generates (e.g. HT, VHT.)
      To fix this, treat the RIC element specially, and stop after
      it only when we find something that doesn't actually belong to
      it. This assumes userspace is actually correctly building it,
      directly after the fast BSS transition IE and before all the
      others like extended capabilities.
      This leaves as a potential problem the case where userspace is
      building the following IEs:
      [RDE] [vendor resource description] [vendor non-resource IE]
      In this case, we'd erroneously consider all three IEs to be
      part of the RIC data together, and not split them between the
      two vendor IEs. Unfortunately, it isn't easily possible to
      distinguish vendor IEs, so this isn't easy to fix. Luckily,
      this case is rare as normally wpa_supplicant will include an
      extended capabilities IE in the IEs, and that certainly will
      break the two vendor IEs apart correctly.
      Reviewed-by: default avatarEliad Peller <eliad@wizery.com>
      Reviewed-by: default avatarBeni Lev <beni.lev@intel.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    • Rostislav Lisovy's avatar
      mac80211: 802.11p OCB mode support · 239281f8
      Rostislav Lisovy authored
      This patch adds 802.11p OCB (Outside the Context of a BSS) mode
      When communicating in OCB mode a mandatory wildcard BSSID
      (48 '1' bits) is used.
      The EDCA parameters handling function was changed to support
      802.11p specific values.
      The insertion of a newly discovered STAs is done in the similar way
      as in the IBSS mode -- through the deferred insertion.
      The OCB mode uses a periodic 'housekeeping task' for expiration of
      disconnected STAs (in the similar manner as in the MESH mode).
      New Kconfig option for verbose OCB debugging outputs is added.
      Signed-off-by: default avatarRostislav Lisovy <rostislav.lisovy@fel.cvut.cz>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
    • Rostislav Lisovy's avatar
      cfg80211: 802.11p OCB mode handling · 6e0bd6c3
      Rostislav Lisovy authored
      This patch adds new iface type (NL80211_IFTYPE_OCB) representing
      the OCB (Outside the Context of a BSS) mode.
      When establishing a connection to the network a cfg80211_join_ocb
      function is called (particular nl80211_command is added as well).
      A mandatory parameters during the ocb_join operation are 'center
      frequency' and 'channel width (5/10 MHz)'.
      Changes done in mac80211 are minimal possible required to avoid
      many warnings (warning: enumeration value 'NL80211_IFTYPE_OCB'
      not handled in switch) during compilation. Full functionality
      (where needed) is added in the following patch.
      Signed-off-by: default avatarRostislav Lisovy <rostislav.lisovy@fel.cvut.cz>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
  8. 23 Oct, 2014 2 commits
  9. 10 Oct, 2014 1 commit
  10. 08 Sep, 2014 1 commit
    • Steinar H. Gunderson's avatar
      mac80211: support DTPC IE (from Cisco Client eXtensions) · c8d65917
      Steinar H. Gunderson authored
      Linux already supports 802.11h, where the access point can tell the
      client to reduce its transmission power. However, 802.11h is only
      defined for 5 GHz, where the need for this is much smaller than on
      2.4 GHz.
      Cisco has their own solution, called DTPC (Dynamic Transmit Power
      Control). Cisco APs on a controller sometimes but not always send
      802.11h; they always send DTPC, even on 2.4 GHz. This patch adds support
      for parsing and honoring the DTPC IE in addition to the 802.11h
      element (they do not always contain the same limits, so both must
      be honored); the format is not documented, but very simple.
      Tested (on top of wireless.git and on 3.16.1) against a Cisco Aironet
      1142 joined to a Cisco 2504 WLC, by setting various transmit power
      levels for the given access points and observing the results.
      The Wireshark 802.11 dissector agrees with the interpretation of the
      element, except for negative numbers, which seem to never happen
      Signed-off-by: default avatarSteinar H. Gunderson <sgunderson@bigfoot.com>
      Signed-off-by: default avatarJohannes Berg <johannes@sipsolutions.net>
  11. 05 Sep, 2014 1 commit
  12. 21 Jul, 2014 1 commit
  13. 25 Jun, 2014 3 commits
  14. 23 Jun, 2014 4 commits
  15. 09 May, 2014 1 commit
  16. 05 May, 2014 1 commit
  17. 28 Apr, 2014 2 commits
  18. 25 Apr, 2014 1 commit
  19. 09 Apr, 2014 4 commits
  20. 20 Feb, 2014 1 commit
    • Johannes Berg's avatar
      mac80211: fix station wakeup powersave race · e3685e03
      Johannes Berg authored
      Consider the following (relatively unlikely) scenario:
       1) station goes to sleep while frames are buffered in driver
       2) driver blocks wakeup (until no more frames are buffered)
       3) station wakes up again
       4) driver unblocks wakeup
      In this case, the current mac80211 code will do the following:
       1) WLAN_STA_PS_STA set
       2) WLAN_STA_PS_DRIVER set
       3) - nothing -
       4) WLAN_STA_PS_DRIVER cleared
      As a result, no frames will be delivered to the client, even
      though it is awake, until it sends another frame to us that
      triggers ieee80211_sta_ps_deliver_wakeup() in sta_ps_end().
      Since we now take the PS spinlock, we can fix this while at
      the same time removing the complexity with the pending skb
      queue function. This was broken since my commit 50a9432d
      ("mac80211: fix powersaving clients races") due to removing
      the clearing of WLAN_STA_PS_STA in the RX path.
      While at it, fix a cleanup path issue when a station is
      removed while the driver is still blocking its wakeup.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
  21. 11 Feb, 2014 1 commit
  22. 06 Feb, 2014 1 commit
  23. 05 Feb, 2014 1 commit