)]}'
{
  "log": [
    {
      "commit": "cf4e594ea7e55555e81647b74a3a8e8b2826a529",
      "tree": "794013429d9613ef253111fb50f993600ab14a55",
      "parents": [
        "5928b91acae97622a6f2e679eb7a9f19bed68e3e"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Thu Dec 16 00:52:40 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Dec 16 15:22:30 2010 -0500"
      },
      "message": "nl80211: Add notification for dropped Deauth/Disassoc\n\nAdd a new notification to indicate that a received, unprotected\nDeauthentication or Disassociation frame was dropped due to\nmanagement frame protection being in use. This notification is\nneeded to allow user space (e.g., wpa_supplicant) to implement\nSA Query procedure to recover from association state mismatch\nbetween an AP and STA.\n\nThis is needed to avoid getting stuck in non-working state when MFP\n(IEEE 802.11w) is used and a protected Deauthentication or\nDisassociation frame is dropped for any reason. After that, the\nstation would silently discard any unprotected Deauthentication or\nDisassociation frame that could be indicating that the AP does not\nhave association for the STA (when the Reason Code would be 6 or 7).\nIEEE Std 802.11w-2009, 11.13 describes this recovery mechanism.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f7ca38dfe58c20cb1aa2ed9643187e8b194b5bae",
      "tree": "42db54588fd5fa769a16def75708117903577b40",
      "parents": [
        "9a67d761b39614c0495dcab9a204e21a9f4c4d31"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Nov 25 10:02:29 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 29 15:24:35 2010 -0500"
      },
      "message": "nl80211/cfg80211: extend mgmt-tx API for off-channel\n\nWith p2p, it is sometimes necessary to transmit\na frame (typically an action frame) on another\nchannel than the current channel. Enable this\nthrough the CMD_FRAME API, and allow it to wait\nfor a response. A new command allows that wait\nto be aborted.\n\nHowever, allow userspace to specify whether or\nnot it wants to allow off-channel TX, it may\nactually want to use the same channel only.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c063dbf52b998b852122dff07a8b8dd430b38437",
      "tree": "b27cc73fa8a1d9ed8fb5b0a1306e8194e18662a9",
      "parents": [
        "79b1c460a0b55e55981c25c56597c4d5d2872de3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Nov 24 08:10:05 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:36 2010 -0500"
      },
      "message": "cfg80211: allow using CQM event to notify packet loss\n\nThis adds the ability for drivers to use CQM events\nto notify about packet loss for specific stations\n(which could be the AP for the managed mode case).\nSince the threshold might be determined by the\ndriver (it isn\u0027t passed in right now) it will be\npassed out of the driver to userspace in the event.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "271733cf844a2f5f186ef3b40c26d6397b71039a",
      "tree": "6b674540afe189b48599ae423c2174ebd48a8ffe",
      "parents": [
        "7a8266524af7ec70d1b3d10f964ce911d922d466"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Oct 13 12:06:23 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 13 15:45:22 2010 -0400"
      },
      "message": "cfg80211: notify drivers about frame registrations\n\nDrivers may need to adjust their filters according\nto frame registrations, so notify them about them.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "663fcafd977f13e6483f7d4cf2ccdbc4fae81ed0",
      "tree": "b1c74fe389dff24d94c95eaeb3a52932f6671007",
      "parents": [
        "4bd530f3ab51c7d656bca29d927a50e5aa87175e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 30 21:06:09 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:23 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow management frame TX in AP mode\n\nEnable management frame transmission and subscribing\nto management frames through nl80211 in both cfg80211\nand mac80211. Also update a few places that I forgot\nto update for P2P-client mode previously, and fix a\nsmall bug with non-action frames in this API.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "074ac8df9f93f2a35a356d92fd7f16cd846f0a03",
      "tree": "b6a77291a1eea9a11862ad78e965c1df29e62d43",
      "parents": [
        "f799a301abf77b87133d624164d28dc2b521e99d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 16 14:58:22 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Sep 16 15:46:06 2010 -0400"
      },
      "message": "cfg80211/nl80211: introduce p2p device types\n\nThis adds P2P-STA and P2P-GO as device types so\nwe can distinguish between those and normal STA\nor AP (respectively) type interfaces.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2e161f78e5f63a7f9fd25a766bb7f816a01eb14a",
      "tree": "befd44feeb1f47da1f41e6fc310a223ad67030ff",
      "parents": [
        "ac4c977d16d843f12901595c91773dddb65768a9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Aug 12 15:38:38 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 24 16:27:56 2010 -0400"
      },
      "message": "cfg80211/mac80211: extensible frame processing\n\nAllow userspace to register for more than just\naction frames by giving the frame subtype, and\nmake it possible to use this in various modes\nas well.\n\nWith some tweaks and some added functionality\nthis will, in the future, also be usable in AP\nmode and be able to replace the cooked monitor\ninterface currently used in that case.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3f3b6a8d90b6e762e2bb83e6a9e86d9534b56cdc",
      "tree": "6d9580c04474055b06d6b5c332c8f3d36c8a3bbc",
      "parents": [
        "2bff8ebf32a7c5ec9e5f5eeffef94a8cb622f5f0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Aug 05 10:20:27 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 15:26:39 2010 -0400"
      },
      "message": "cfg80211: deauth doesn\u0027t always imply disconnect\n\nWhen an AP sends a deauth frame, or we send one\nto an AP, that only means we lost our connection\nif we were actually connected to that AP. Check\nthis to avoid sending spurious \"disconnected\"\nevents and breaking \"iw ... link\" reporting.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fe100acddf438591ecf3582cb57241e560da70b7",
      "tree": "a8fd5763ca3e161ce3de271289e7adec668795c0",
      "parents": [
        "a9fda88b27e71d727b6c85b3792b34a8a4bebf13"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Aug 09 15:52:03 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 09 15:18:57 2010 -0400"
      },
      "message": "cfg80211: fix locking in action frame TX\n\nAccesses to \"wdev-\u003ecurrent_bss\" must be\nlocked with the wdev lock, which action\nframe transmission is missing.\n\nCc: stable@kernel.org [2.6.33+]\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "643f82e32f14faf0d0944c804203a6681b6b0a1e",
      "tree": "9bea8e53249b1ef9be25afdf36d4e411573000d7",
      "parents": [
        "e71bcbd0a149b6baa3419b5822f1ceb2b54e6ff6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Jul 12 14:46:43 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jul 12 16:05:31 2010 -0400"
      },
      "message": "cfg80211: ignore spurious deauth\n\nEver since mac80211/drivers are no longer\nfully in charge of keeping track of the\nauth status, trying to make them do so will\nfail. Instead of warning and reporting the\ndeauthentication to userspace, cfg80211 must\nsimply ignore it so that spurious\ndeauthentications, e.g. before starting\nauthentication, aren\u0027t seen by userspace as\nactual deauthentications.\n\nCc: stable@kernel.org\nReported-by: Paul Stewart \u003cpstew@google.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9d38d85de0270e3927bffab94973a9c78d1dc800",
      "tree": "31bc0111445ce78e2c373954d3b0fbce7cbb63ba",
      "parents": [
        "aa9746af8fa26d28d442a7415c701eb5dfeb7a2a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jun 09 17:20:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:38:16 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow action frame TX/RX in IBSS\n\nWhen in IBSS mode, currently action frame TX and RX\ncannot be used. Allow using it to talk to any peer,\nor for public action frames. Also, while at it,\nrestructure the code in mac80211 to make it easier\nto add this for other interface types in the future.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "252aa631f88080920a7083ac5a5844ffc5463629",
      "tree": "e1482e9cf7c7230acb9ed33c8a24687e48dc7aa1",
      "parents": [
        "4f424867dd4752d457458fec29ca57ce5d7dc4ac"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed May 19 12:17:12 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 02 16:13:27 2010 -0400"
      },
      "message": "cfg80211: make action channel type optional\n\nWhen sending action frames, we want to verify\nthat we do that on the correct channel. However,\nchecking the channel type in addition can get in\nthe way, since the channel type could change on\nthe fly during an association, and it\u0027s not\nuseful to have the channel type anyway since it\nhas no effect on the transmission. Therefore,\nmake it optional to specify so that if wanted,\nit can still be checked, but is not required.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5c01d5669356e13f0fb468944c1dd4c6a7e978ad",
      "tree": "fa43345288d7b25fac92b3b35360a177c4947313",
      "parents": [
        "fea069152614cdeefba4b2bf80afcddb9c217fc8",
        "a5e944f1d955f3819503348426763e21e0413ba6"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 15 16:21:34 2010 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6 into for-davem\n\nConflicts:\n\tDocumentation/feature-removal-schedule.txt\n\tdrivers/net/wireless/ath/ath5k/phy.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n"
    },
    {
      "commit": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "d5cdfacb35ed886271d1ccfffbded98d3447da17",
      "tree": "8233a713949c4c8da8c98e75868efc74d5613c3d",
      "parents": [
        "7590a550b88b8c3cb025f0a8ed58e279ad62e4c1"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Sun Apr 04 09:37:19 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 07 14:37:56 2010 -0400"
      },
      "message": "cfg80211: Add local-state-change-only auth/deauth/disassoc\n\ncfg80211 is quite strict on allowing authentication and association\ncommands only in certain states. In order to meet these requirements,\nuser space applications may need to clear authentication or\nassociation state in some cases. Currently, this can be done with\ndeauth/disassoc command, but that ends up sending out Deauthentication\nor Disassociation frame unnecessarily. Add a new nl80211 attribute to\nallow this sending of the frame be skipped, but with all other\ndeauth/disassoc operations being completed.\n\nSimilar state change is also needed for IEEE 802.11r FT protocol in\nthe FT-over-DS case which does not use Authentication frame exchange\nin a transition to another BSS. For this to work with cfg80211, an\nauthentication entry needs to be created for the target BSS without\nsending out an Authentication frame. The nl80211 authentication\ncommand can be used for this purpose, too, with the new attribute to\nindicate that the command is only for changing local state. This\nenables wpa_supplicant to complete FT-over-DS transition successfully.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "d6dc1a386358979e12366d1f35eeb68fc181e101",
      "tree": "4b65ba21328d6984d008b62795dd60d99c350632",
      "parents": [
        "921ca03c8f8e982f27fc406bc301caf2196b99f7"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Tue Mar 23 09:02:33 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 24 16:02:37 2010 -0400"
      },
      "message": "cfg80211: Add connection quality monitoring support to nl80211\n\nAdd support for basic configuration of a connection quality monitoring to the\nnl80211 interface, and basic support for notifying about triggered monitoring\nevents.\n\nVia this interface a user-space connection manager may configure and receive\npre-warning events of deteriorating WLAN connection quality, and start\npreparing for roaming in advance, before the connection is already lost.\n\nAn example usage of such a trigger is starting scanning for nearby AP\u0027s in\nan attempt to find one with better connection quality, and associate to it\nbefore the connection characteristics of the existing connection become too bad\nor the association is even lost, leading in a prolonged delay in connectivity.\n\nThe interface currently supports only RSSI, but it could be later extended\nto include other parameters, such as signal-to-noise ratio, if need for that\narises.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "026331c4d9b526561ea96f95fac4bfc52b69e316",
      "tree": "a82b0a92a7f03a1d151a9db123320689c73d98c7",
      "parents": [
        "8404080568613d93ad7cf0a16dfb68459b42a264"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon Feb 15 12:53:10 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 15 16:14:15 2010 -0500"
      },
      "message": "cfg80211/mac80211: allow registering for and sending action frames\n\nThis implements a new command to register for action frames\nthat userspace wants to handle instead of the in-kernel\nrejection. It is then responsible for rejecting ones that\nit decided not to handle. There is no unregistration, but\nthe socket can be closed for that.\n\nFrames that are not registered for will not be forwarded\nto userspace and will be rejected by the kernel, the\ncfg80211 API helps implementing that.\n\nAdditionally, this patch adds a new command that allows\ndoing action frame transmission from userspace. It can be\nused either to exchange action frames on the current\noperational channel (e.g., with the AP with which we are\ncurrently associated) or to exchange off-channel Public\nAction frames with the remain-on-channel command.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "891dc5e73783eeabd2a704a9425e2a199b39c9f9",
      "tree": "9b4478941c486d47a71bfce455b896c5dda7e811",
      "parents": [
        "e1781ed33a8809c58ad6c3b6d432d656446efa43",
        "55afc80b2ab100618c17af77915f75307b6bd5d1"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 30 15:25:08 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 30 15:25:08 2009 -0500"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n\nConflicts:\n\tdrivers/net/wireless/libertas/scan.c\n"
    },
    {
      "commit": "98b6218388e345064c3f2d3c161383a18274c638",
      "tree": "3df881c8e15947aeefe31da7fa83980a1530aed3",
      "parents": [
        "e4da8c37af626001ff704fb29ea14eb58f5f7208"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:15:44 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:55:06 2009 -0500"
      },
      "message": "mac80211/cfg80211: add station events\n\nWhen, for instance, a new IBSS peer is found, userspace\nwants to be notified. Add events for all new stations\nthat mac80211 learns about.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9588bbd5529461a3dacd435bf239c84c3508f569",
      "tree": "dd00011714bdefdef1f818ac7caf53682253a515",
      "parents": [
        "b203ffc3a447eb8d9e6120b783ddee081b143061"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Wed Dec 23 13:15:41 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:55:02 2009 -0500"
      },
      "message": "cfg80211: add remain-on-channel command\n\nAdd new commands for requesting the driver to remain awake\non a specified channel for the specified amount of time\n(and another command to cancel such an operation). This\ncan be used to implement userspace-controlled off-channel\noperations, like Public Action frame exchange on another\nchannel than the operation channel.\n\nThe off-channel operation should behave similarly to scan,\ni.e. the local station (if associated) moves into power\nsave mode to request the AP to buffer frames for it and\nthen moves to the other channel to allow the off-channel\noperation to be completed. The duration parameter can be\nused to request enough time to receive a response from\nthe target station.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3bdb2d48c5f58c781a4099c99044384a23620884",
      "tree": "055d3730d54c5f07716813bf144505f98880bc42",
      "parents": [
        "671adc93b6472eaa0142a88d096c945f7b07893a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 23 13:12:05 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 28 16:19:54 2009 -0500"
      },
      "message": "cfg80211: fix race between deauth and assoc response\n\nJoseph Nahmias reported, in http://bugs.debian.org/562016,\nthat he was getting the following warning (with some log\naround the issue):\n\n  ath0: direct probe to AP 00:11:95:77:e0:b0 (try 1)\n  ath0: direct probe responded\n  ath0: authenticate with AP 00:11:95:77:e0:b0 (try 1)\n  ath0: authenticated\n  ath0: associate with AP 00:11:95:77:e0:b0 (try 1)\n  ath0: deauthenticating from 00:11:95:77:e0:b0 by local choice (reason\u003d3)\n  ath0: direct probe to AP 00:11:95:77:e0:b0 (try 1)\n  ath0: RX AssocResp from 00:11:95:77:e0:b0 (capab\u003d0x421 status\u003d0 aid\u003d2)\n  ath0: associated\n  ------------[ cut here ]------------\n  WARNING: at net/wireless/mlme.c:97 cfg80211_send_rx_assoc+0x14d/0x152 [cfg80211]()\n  Hardware name: 7658CTO\n  ...\n  Pid: 761, comm: phy0 Not tainted 2.6.32-trunk-686 #1\n  Call Trace:\n   [\u003cc1030a5d\u003e] ? warn_slowpath_common+0x5e/0x8a\n   [\u003cc1030a93\u003e] ? warn_slowpath_null+0xa/0xc\n   [\u003cf86cafc7\u003e] ? cfg80211_send_rx_assoc+0x14d/0x152\n  ...\n  ath0: link becomes ready\n  ath0: deauthenticating from 00:11:95:77:e0:b0 by local choice (reason\u003d3)\n  ath0: no IPv6 routers present\n  ath0: link is not ready\n  ath0: direct probe to AP 00:11:95:77:e0:b0 (try 1)\n  ath0: direct probe responded\n  ath0: authenticate with AP 00:11:95:77:e0:b0 (try 1)\n  ath0: authenticated\n  ath0: associate with AP 00:11:95:77:e0:b0 (try 1)\n  ath0: RX ReassocResp from 00:11:95:77:e0:b0 (capab\u003d0x421 status\u003d0 aid\u003d2)\n  ath0: associated\n\nIt is not clear to me how the first \"direct probe\" here\nhappens, but this seems to be a race condition, if the\nuser requests to deauth after requesting assoc, but before\nthe assoc response is received. In that case, it may\nhappen that mac80211 tries to report the assoc success to\ncfg80211, but gets blocked on the wdev lock that is held\nbecause the user is requesting the deauth.\n\nThe result is that we run into a warning. This is mostly\nharmless, but maybe cause an unexpected event to be sent\nto userspace; we\u0027d send an assoc success event although\nuserspace was no longer expecting that.\n\nTo fix this, remove the warning and check whether the\nrace happened and in that case abort processing.\n\nReported-by: Joseph Nahmias \u003cjoe@nahmias.net\u003e\nCc: stable@kernel.org\nCc: 562016-quiet@bugs.debian.org\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "5fba4af32ceeb935b3926714df9a64a33c2c9cf5",
      "tree": "0f9fe83dade3dfd394bfecd2b675e4e600ec350b",
      "parents": [
        "f38fd12fa7b7b98e158a9b31d388da34eef25c22"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Dec 02 12:43:42 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 22 13:31:17 2009 -0500"
      },
      "message": "cfg80211: avoid sending spurious deauth to userspace\n\nBefore\n  commit ca9034592823e8179511e48a78731f95bfdd766c\n  Author: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\n  Date:   Tue Oct 13 13:45:28 2009 +0200\n\n      cfg80211: remove warning in deauth case\n\nwe assumed that drivers never give us spurious deauth\nframes because they filter them out based on the auth\nstate they keep track of. This turned out to be racy,\nbecause userspace might deauth while the AP is also\nsending a deauth frame, so the warning was removed.\n\nHowever, in that case we should not tell userspace\nabout the AP\u0027s frame if it requested deauth \"first\",\nwhere \"first\" means it came to cfg80211 first.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a58ce43f2fb17b728395ff530f019ca53c80145f",
      "tree": "1de5d2680d42de12902ccb85e99bc86f63eebf58",
      "parents": [
        "7351c6bd482712e5e3ec9dffc547de0e0863efb0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Nov 19 12:45:42 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 19 11:09:02 2009 -0500"
      },
      "message": "mac80211: avoid spurious deauth frames/messages\n\nWith WEXT, it happens frequently that the SME\nrequests an authentication but then deauthenticates\nright away because some new parameters came along.\nEvery time this happens we print a deauth message\nand send a deauth frame, but both of that is rather\nconfusing. Avoid it by aborting the authentication\nprocess silently, and telling cfg80211 about that.\n\nThe patch looks larger than it really is:\n__cfg80211_auth_remove() is split out from\ncfg80211_send_auth_timeout(), there\u0027s no new code\nexcept __cfg80211_auth_canceled() (a one-liner) and\nthe mac80211 bits (7 new lines of code).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "24b6b15f7d07d26330f73057d618089976a08792",
      "tree": "52bf74ad76afae6fecce3f5ff75dfc027971d9b2",
      "parents": [
        "af65cd96dd4ea8ea5adc6ee850e61a407cd1067a"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Tue Nov 17 21:35:38 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 18 17:09:24 2009 -0500"
      },
      "message": "cfg80211: Allow reassociation in associated state\n\ncfg80211 rejects all association requests when in associated state. This\nprevents clean roaming within an ESS since one would first need to\ndisassociate before being able to request reassociation.\n\nAccept the reassociation request and let the old association to be\ndropped when the new one is completed. This fixes nl80211-based\nroaming with the current snapshot version of wpa_supplicant (that has\ncode for requesting reassociation explicitly withthe previous BSSID\nattribute).\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7fdad987d63f02c8fba30276ba395ac8dc93b719",
      "tree": "06d50ad675b48b9aa9f220d1fba9102b19cac168",
      "parents": [
        "5b9482dda6dda11dc7050ffa5b4ebfb0c775880f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Oct 31 16:15:39 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 04 18:44:48 2009 -0500"
      },
      "message": "cfg80211: remove dead variable\n\ncommit 211a4d12abf86fe0df4cd68fc6327cbb58f56f81\n  Author: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\n  Date:   Tue Oct 20 15:08:53 2009 +0900\n\n      cfg80211: sme: deauthenticate on assoc failure\n\naccidentally introduced a dead variable, I had\nchanged the code to not need it while creating\nthe patch and it looks like I forgot to remove\nthe variable (and nobody else noticed either).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0519d83d83ed485b5a1f9222ff69d7d6c9bb8a01",
      "tree": "2e336be8a4bd2e59bcd4b69b00feb77c6672a9cb",
      "parents": [
        "38bfd8f5bec496e8e0db8849e01c99a33479418a",
        "b5dd884e682cae6b8c037f9d11f3b623b4cf2011"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:28:59 2009 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Oct 29 21:28:59 2009 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n"
    },
    {
      "commit": "e0da41b2cf10ae95592cb2496f8f81aa4b4bf16c",
      "tree": "e8bb61adc3f5f01e61b596056f3608414aea5b45",
      "parents": [
        "ce470613cdfde70f25419cc52a4816315825f5d9"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Tue Oct 13 13:45:28 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:48:17 2009 -0400"
      },
      "message": "cfg80211: remove warning in deauth case\n\nIt might be the case that __cfg80211_disconnected() has already\ncleaned up wdev-\u003ecurrent_bss() for us. The old code didn\u0027t catch\nthat situation and didn\u0027t warn needlessly.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ce470613cdfde70f25419cc52a4816315825f5d9",
      "tree": "0b5d002515bdf4fc34452eb836c57278f27a826b",
      "parents": [
        "b54853f1b157a173fe5ac9145623670c66a9e7b9"
      ],
      "author": {
        "name": "Holger Schurig",
        "email": "hs4233@mail.mn-solutions.de",
        "time": "Tue Oct 13 13:28:13 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:48:16 2009 -0400"
      },
      "message": "cfg80211: no cookies in cfg80211_send_XXX()\n\nGet rid of cookies in cfg80211_send_XXX() functions.\n\nSigned-off-by: Holger Schurig \u003chs4233@mail.mn-solutions.de\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7d930bc33653d5592dc386a76a38f39c2e962344",
      "tree": "f974e7f86b0d695ca1ca90095c157bec4f739006",
      "parents": [
        "2ef6e4440926668cfa9eac4b79e63528ebcbe0c1"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Oct 20 15:08:53 2009 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 27 16:29:47 2009 -0400"
      },
      "message": "cfg80211: sme: deauthenticate on assoc failure\n\nWhen the in-kernel SME gets an association failure from\nthe AP we don\u0027t deauthenticate, and thus get into a very\nconfused state which will lead to warnings later on. Fix\nthis by actually deauthenticating when the AP indicates\nan association failure.\n\n(Brought to you by the hacking session at Kernel Summit 2009 in Tokyo,\nJapan. -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3d23e349d807177eaf519d444677cee86b1a04cf",
      "tree": "e800dee247598e59185ddd2dd47d2ac6fe090b9c",
      "parents": [
        "bc974f4a230756faf4f69114f271de2e678b363b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Sep 29 23:27:28 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 07 16:39:43 2009 -0400"
      },
      "message": "wext: refactor\n\nRefactor wext to\n * split out iwpriv handling\n * split out iwspy handling\n * split out procfs support\n * allow cfg80211 to have wireless extensions compat code\n   w/o CONFIG_WIRELESS_EXT\n\nAfter this, drivers need to\n - select WIRELESS_EXT\t- for wext support\n - select WEXT_PRIV\t- for iwpriv support\n - select WEXT_SPY\t- for iwspy support\n\nexcept cfg80211 -- which gets new hooks in wext-core.c\nand can then get wext handlers without CONFIG_WIRELESS_EXT.\n\nWireless extensions procfs support is auto-selected\nbased on PROC_FS and anything that requires the wext core\n(i.e. WIRELESS_EXT or CFG80211_WEXT).\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ea416a793d2b611f22b42ba094fd2e5bd30fff43",
      "tree": "bfa379d79861a1b2b11f26810873dc7a4dc8f847",
      "parents": [
        "86b2892a22a433e56e39e33bf353adc6cc4eabb2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Aug 17 12:22:14 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Aug 20 11:35:57 2009 -0400"
      },
      "message": "cfg80211: report userspace SME connected event properly\n\nInstead of hacking the event reporting into the\n__cfg80211_connect_result() function which is also\ninvoked by others, set up things correctly and then\ninvoke that function, so that it can do more sanity\nchecking.\n\nAlso, it is currently not possible to get a ROAMED\nevent from the userspace SME anyway since we send\nout a DISCONNECTED event when it disassociates and\nthen a new CONNECTED event on the next association.\n\nThanks to Zhu Yi for pointing out that the code is\nsomewhat convoluted and doesn\u0027t warn when it should.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f401a6f7ede753e56b84025e7d2db0d5ef560ce6",
      "tree": "12b077096234ba0f990c637665d11e0afa608b17",
      "parents": [
        "59bbb6f7574bc693ed8313b98eac641116c95b94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "cfg80211: use reassociation when possible\n\nWith the move of everything related to the SME from\nmac80211 to cfg80211, we lost the ability to send\nreassociation frames. This adds them back, but only\nfor wireless extensions. With the userspace SME, it\nshall control assoc vs. reassoc (it already can do\nso with the nl80211 interface).\n\nI haven\u0027t touched the connect() implementation, so\nit is not possible to reassociate with the nl80211\nconnect primitive. I think that should be done with\nthe NL80211_CMD_ROAM command, but we\u0027ll have to see\nhow that can be handled in the future, especially\nwith fullmac chips.\n\nThis patch addresses only the immediate regression\nwe had in mac80211, which previously sent reassoc.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e458b8a22d33eef62765c9f89889efeb4041f073",
      "tree": "e738ffebfecb0e461ca033528dd39a8b86839770",
      "parents": [
        "e21546a2a3953a7d4b9d5c9b1cf12184ffceab96"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Aug 06 20:41:33 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:46 2009 -0400"
      },
      "message": "cfg80211: fix nl80211 disconnected events\n\nWhen reporting a disconnection to userspace, we try\nto report whether it was from the AP or by our own\nchoice. However, we misreported a broadcast deauth\nor disassoc as being by own choice, which is wrong.\nFix this by checking the sender address instead of\nthe destination address.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b935df01ed4f0848f29b1e39c4f95d87b0206dea",
      "tree": "575a56fa443f646dbbeb1fe2895d47a696a212e6",
      "parents": [
        "4af198fb7a99b07980b1bd52df550ba3f24688df"
      ],
      "author": {
        "name": "Pavel Roskin",
        "email": "proski@gnu.org",
        "time": "Thu Aug 06 04:52:42 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:45 2009 -0400"
      },
      "message": "cfg80211: fix disassociation warning due to misuse of wdev-\u003ecurrent_bss\n\nWARN_ON was triggered at mlme.c:213 when dissociating from an AP.\n\nwdev-\u003ecurrent_bss-\u003epub.bssid should be used in place of\nwdev-\u003ecurrent_bss for BSSID comparison.\n\nSigned-off-by: Pavel Roskin \u003cproski@gnu.org\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "df7fc0f9735085bb617fff774bfd71465edb448c",
      "tree": "2b47f3823a8aee6c13e86aa3dedc06bda9ebae38",
      "parents": [
        "97af743207466ff8b477e14bfb7af0ba2c93375b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 29 11:23:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 04 16:43:24 2009 -0400"
      },
      "message": "cfg80211: keep track of current_bss for userspace SME\n\nWhen a userspace SME is active, we\u0027re currently not\nkeeping track of the BSS properly for reporting the\ncurrent link and for internal use. Additionally, it\nlooks like there is a possible BSS leak in that the\nBSS never gets removed from auth_bsses[]. To fix it,\npass the BSS struct to __cfg80211_connect_result in\nthis case.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a9a11622c5c742c115fad371c0397ae86dd3bb67",
      "tree": "747d04a77d4411886befb5701322fa06da90a0fb",
      "parents": [
        "1f9298f96082692bdfe73af6fc2167f627f21647"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:53 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:20 2009 -0400"
      },
      "message": "cfg80211: self-contained wext handling where possible\n\nFinally! This is what you\u0027ve all been waiting for!\n\nThis patch makes cfg80211 take care of wext emulation\n_completely_ by itself, drivers that don\u0027t need things\ncfg80211 doesn\u0027t do yet don\u0027t even need to be aware of\nwireless extensions.\nThis means we can also clean up mac80211\u0027s and iwm\u0027s\nKconfig and make it possible to build them w/o wext\nnow!\n\n\t\tRIP wext.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f9d6b402603a63b5e5b56bd7a79fa72a818be55b",
      "tree": "f1568e0d82005fb40186d5436627841be053ac87",
      "parents": [
        "fec247c0d5bfbaa0861774ce31d515bbd48f7fce"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 10:22:28 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:11 2009 -0400"
      },
      "message": "cfg80211: fix disassoc while not associated\n\nWhen trying to disassociate while not associated,\nthe kernel would crash rather than refusing the\noperation, fix this;\n\nReported-by: Maxim Levitsky \u003cmaximlevitsky@gmail.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "596a07c18b35c9df2fb212856241ae0dfe3162b9",
      "tree": "0629a2e3cd6aec37a7ac7eab63bcf7ef5121da7e",
      "parents": [
        "930c06f27120fa8cf0bfb6fa000a701cfaf01ed6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Jul 11 00:17:32 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:12 2009 -0400"
      },
      "message": "cfg80211: fix more bugs in mlme handling\n\nThe \"what-was-I-thinking-if-anything\" patch. Clearly,\nif cfg80211_send_disassoc() does wdev_lock() and then\ncalls __cfg80211_send_disassoc(), the latter shouldn\u0027t\nlock again. And the sme_state test is ... no further\ncomments.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "667503ddcb96f3b10211f997fe55907fa7509841",
      "tree": "5e2559e94a716bb81bfc7566e3e3a05267810c31",
      "parents": [
        "4f5dadcebb55fccef34722bbbf6401d39124c8a4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:11 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:32 2009 -0400"
      },
      "message": "cfg80211: fix locking\n\nOver time, a lot of locking issues have crept into\nthe smarts of cfg80211, so e.g. scan completion can\nrace against a new scan, IBSS join can race against\nleaving an IBSS, etc.\n\nIntroduce a new per-interface lock that protects\nmost of the per-interface data that we need to keep\ntrack of, and sprinkle assertions about that lock\neverywhere. Some things now need to be offloaded to\nwork structs so that we don\u0027t require being able to\nsleep in functions the drivers call. The exception\nto that are the MLME callbacks (rx_auth etc.) that\ncurrently only mac80211 calls because it was easier\nto do that there instead of in cfg80211, and future\ndrivers implementing those calls will, if they ever\nexist, probably need to use a similar scheme like\nmac80211 anyway...\n\nIn order to be able to handle _deauth and _disassoc\nproperly, introduce a cookie passed to it that will\ndetermine locking requirements.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c1e6fb1aad0d4d4f032d46b6bab093a41c6c82bf",
      "tree": "7097809f88122dfe09f4185cf918862071de4402",
      "parents": [
        "cb0b4beb93d14429bf0c50fc1ab8e26348dca880"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:08 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:31 2009 -0400"
      },
      "message": "cfg80211: warn again on spurious deauth\n\nThe original code in mac80211 could send a deauth\nframe under certain circumstances even if nothing\nhad ever requested an authentication. This has been\nfixed with the rework there, so cfg80211 can now\nwarn again about spurious events to catch possible\nfuture drivers or mac80211 regressions.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cb0b4beb93d14429bf0c50fc1ab8e26348dca880",
      "tree": "2bdb9aa1f2b3e7e2fdd9425da5ab6aa062134aa5",
      "parents": [
        "c238c8ac63f2d33ea5e7c0b9e9e0ccd8ae9a34e4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:07 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:31 2009 -0400"
      },
      "message": "cfg80211: mlme API must be able to sleep\n\nAfter the mac80211 mlme cleanup, we can require that\nthe MLME functions in cfg80211 can sleep. This will\nsimplify future work in cfg80211 a lot.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3e5d7649a64e558e4146ddfad4dfcf13fc65dd47",
      "tree": "fa51725ca07cf682e6694ba5f107d8614d9f0972",
      "parents": [
        "2ffa5fede379091bf62a732462b829e4b51af054"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 14:37:26 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:30 2009 -0400"
      },
      "message": "cfg80211: let SME control reassociation vs. association\n\nSince we don\u0027t really know that well in the kernel,\nlet\u0027s let the SME control whether it wants to use\nreassociation or not, by allowing it to give the\nprevious BSSID in the associate() parameters.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0a9b5e17952ec7ce938645a23ba29bcfdb66c8d9",
      "tree": "2df7380758211f107f3510cae6a96bad7b38db08",
      "parents": [
        "19957bb399e2722719c0e20c9ae91cf8b6aaff04"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 02 18:26:18 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:54 2009 -0400"
      },
      "message": "cfg80211: refuse authenticating to same BSSID twice\n\nIt is possible that there are different BSS structs with\nthe same BSSID, but we cannot authenticate with multiple\nof them them because we need the BSSID to be unique for\ndeauthenticating/disassociating.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "19957bb399e2722719c0e20c9ae91cf8b6aaff04",
      "tree": "9c4d53fe5938ceee41333a1afd5be0ed5c1ce313",
      "parents": [
        "517357c685ccc4b5783cc7dbdae8824ada19a97f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 02 17:20:43 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:53 2009 -0400"
      },
      "message": "cfg80211: keep track of BSSes\n\nIn order to avoid problems with BSS structs going away\nwhile they\u0027re in use, I\u0027ve long wanted to make cfg80211\nkeep track of them. Without the SME, that wasn\u0027t doable\nbut now that we have the SME we can do this too. It can\nkeep track of up to four separate authentications and\none association, regardless of whether it\u0027s controlled\nby the cfg80211 SME or the userspace SME.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6829c878ecd24ff0ae41b4668c7e9d0f11b66942",
      "tree": "acf78b685d60694040953b4f61d768b95b79e45d",
      "parents": [
        "b23aa676ab9d54469cda9f7151f51a2851c6f36e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 02 09:13:27 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:51 2009 -0400"
      },
      "message": "cfg80211: emulate connect with auth/assoc\n\nThis adds code to cfg80211 so that drivers (mac80211 right\nnow) that don\u0027t implement connect but rather auth/assoc can\nstill be used with the nl80211 connect command. This will\nalso be necessary for the wext compat code.\n\nSigned-off-by: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e6d6e3420d511cd7552a95d1f04bd4c80a9ddb34",
      "tree": "35f34c9ef8fe4c201da36ca819045995a93eeb44",
      "parents": [
        "dad823302135a2d99efd40e35d94a6ff14961c93"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 01 21:26:47 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:49 2009 -0400"
      },
      "message": "cfg80211: use proper allocation flags\n\nInstead of hardcoding GFP_ATOMIC everywhere, add a\nnew function parameter that gets the flags from the\ncaller. Obviously then I need to update all callers\n(all of them in mac80211), and it turns out that now\nit\u0027s ok to use GFP_KERNEL in almost all places.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f58d4ed98bfe7b2febcd6f0d62744b623e4b8371",
      "tree": "cd9699a78b744979af5336f45e787806b870495a",
      "parents": [
        "b5c469108935bacfe6f45005867256801832fdce"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jun 19 02:45:21 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:47 2009 -0400"
      },
      "message": "cfg80211: send wext MLME-MICHAELMICFAILURE.indication\n\nInstead of having mac80211 do it itself.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1965c85331ed29dc4fd32479ff31663e3e9a518f",
      "tree": "1542f0fdf4121491671bbb604564cb4f6dd1ad58",
      "parents": [
        "ff2ba188fc5eaae529cb2ef9b127c3ca2a7df4b9"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Wed Apr 22 21:38:25 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:21 2009 -0400"
      },
      "message": "nl80211: Add event for authentication/association timeout\n\nSME needs to be notified when the authentication or association\nattempt times out and MLME has stopped processing in order to allow\nthe SME to decide what to do next.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a3b8b0569fbef725597f05278ec58083321f6e9d",
      "tree": "cb3beb05c841a9564a3fdd44d540570c7b89c9f6",
      "parents": [
        "53b46b8444f600cc1744521ea096ea0c5d494dd0"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Fri Mar 27 21:59:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:54:28 2009 -0400"
      },
      "message": "nl80211: Add Michael MIC failure event\n\nDefine a new nl80211 event, NL80211_CMD_MICHAEL_MIC_FAILURE, to be\nused to notify user space about locally detected Michael MIC failures.\nThis matches with the MLME-MICHAELMICFAILURE.indication() primitive.\n\nSince we do not actually have TSC in the skb anymore when\nmac80211_ev_michael_mic_failure() is called, that function is changed\nto take in the TSC as an optional parameter instead of as a\nrequirement to include the TSC after the hdr field (which we did not\nreally follow). For now, TSC is not included in the events from\nmac80211, but it could be added at some point.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "53b46b8444f600cc1744521ea096ea0c5d494dd0",
      "tree": "2f9d3a465a55be2992a8f895c1d09f4cdff3c060",
      "parents": [
        "1778092e1739155acec35a3bccee2fb8a1ae4e91"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Fri Mar 27 20:53:56 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:54:28 2009 -0400"
      },
      "message": "nl80211: Generate deauth/disassoc event for locally generated frames\n\nPreviously, nl80211 mlme events were generated only for received\ndeauthentication and disassociation frames. We need to do the same for\nlocally generated ones in order to let applications know that we\ndisconnected (e.g., when AP does not reply to a probe). Rename the\nnl80211 and cfg80211 functions (s/rx_//) to make it clearer that they\nare used for both received and locally generated frames.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6039f6d23fe792d615da5449e9fa1c6b43caacf6",
      "tree": "af94d1ad78ce1e82d76328ea9a67b351f0a9174b",
      "parents": [
        "a299542e97ec1939fdca7db6d3d82c0aa9bf8b9a"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Thu Mar 19 13:39:21 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Mar 27 20:13:02 2009 -0400"
      },
      "message": "nl80211: Event notifications for MLME events\n\nAdd new nl80211 event notifications (and a new multicast group, \"mlme\")\nfor informing user space about received and processed Authentication,\n(Re)Association Response, Deauthentication, and Disassociation frames in\nstation and IBSS modes (i.e., MLME SAP interface primitives\nMLME-AUTHENTICATE.confirm, MLME-ASSOCIATE.confirm,\nMLME-REASSOCIATE.confirm, MLME-DEAUTHENTICATE.indicate, and\nMLME-DISASSOCIATE.indication). The event data is encapsulated as the 802.11\nmanagement frame since we already have the frame in that format and it\nincludes all the needed information.\n\nThis is the initial step in providing MLME SAP interface for\nauthentication and association with nl80211. In other words, kernel code\nwill act as the MLME and a user space application can control it as the\nSME.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ]
}
