)]}'
{
  "log": [
    {
      "commit": "c10841ca722a0bc960dc541c51582773f9a24f98",
      "tree": "f1e5901db0a530cfd4008f718a908a86bddcb333",
      "parents": [
        "37000b305bff81bb1ee2f7f37b1319b670a08f76"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Thu Jun 30 08:32:41 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 05 14:42:36 2011 -0400"
      },
      "message": "cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex\n\nThere was a deadlock when rfkill-blocking a wireless interface,\nbecause we were locking the rdev mutex on NETDEV_GOING_DOWN to stop\nsched_scans that were eventually running.  The rfkill block code was\nalready holding a mutex under rdev:\n\nkernel: \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nkernel: [ INFO: possible circular locking dependency detected ]\nkernel: 3.0.0-rc1-00049-g1fa7b6a #57\nkernel: -------------------------------------------------------\nkernel: kworker/0:1/4525 is trying to acquire lock:\nkernel: (\u0026rdev-\u003emtx){+.+.+.}, at: [\u003cffffffff8164c831\u003e] cfg80211_netdev_notifier_call+0x131/0x5b0\nkernel:\nkernel: but task is already holding lock:\nkernel: (\u0026rdev-\u003edevlist_mtx){+.+.+.}, at: [\u003cffffffff8164dcef\u003e] cfg80211_rfkill_set_block+0x4f/0xa0\nkernel:\nkernel: which lock already depends on the new lock.\n\nTo fix this, add a new mutex specifically for sched_scan, to protect\nthe sched_scan_req element in the rdev struct, instead of using the\nglobal rdev mutex.\n\nReported-by: Duane Griffin \u003cduaneg@dghda.com\u003e\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a66b98db570a638afd909459e1e6bfa272344bd3",
      "tree": "e4e78a0602b46121548fad2e357f03d550d23c94",
      "parents": [
        "8fcbd4dc7a1b338b393dcd6869deb1725cf1a9f3"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Thu Jun 23 00:00:24 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 27 14:45:25 2011 -0400"
      },
      "message": "mac80211: fix rx-\u003ekey NULL dereference during mic failure\n\nSometimes when reporting a MIC failure rx-\u003ekey may be unset. This\ncode path is hit when receiving a packet meant for a multicast\naddress, and decryption is performed in HW.\n\nFortunately, the failing key_idx is not used for anything up to\n(and including) usermode, so we allow ourselves to drop it on the\nway up when a key cannot be retrieved.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nCc: stable@kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "57a27e1d6a3bb9ad4efeebd3a8c71156d6207536",
      "tree": "2873dc389e21115f1b674134baf1fae0ecdbb087",
      "parents": [
        "6633d649788e72400b02098bd389585e2c56a557"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Tue Jun 07 20:42:26 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jun 07 14:19:07 2011 -0400"
      },
      "message": "nl80211: fix overflow in ssid_len\n\nWhen one of the SSID\u0027s length passed in a scan or sched_scan request\nis larger than 255, there will be an overflow in the u8 that is used\nto store the length before checking.  This causes the check to fail\nand we overrun the buffer when copying the SSID.\n\nFix this by checking the nl80211 attribute length before copying it to\nthe struct.\n\nThis is a follow up for the previous commit\n208c72f4fe44fe09577e7975ba0e7fa0278f3d03, which didn\u0027t fix the problem\nentirely.\n\nReported-by: Ido Yariv \u003cido@wizery.com\u003e\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "208c72f4fe44fe09577e7975ba0e7fa0278f3d03",
      "tree": "f556afcda6931d1ad7d5ab41341a887c0b25f664",
      "parents": [
        "21bc7af6e5e684b44725b20f679e701e38ceef15"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Thu May 19 00:43:38 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 26 15:43:28 2011 -0400"
      },
      "message": "nl80211: fix check for valid SSID size in scan operations\n\nIn both trigger_scan and sched_scan operations, we were checking for\nthe SSID length before assigning the value correctly.  Since the\nmemory was just kzalloc\u0027ed, the check was always failing and SSID with\nover 32 characters were allowed to go through.\n\nThis was causing a buffer overflow when copying the actual SSID to the\nproper place.\n\nThis bug has been there since 2.6.29-rc4.\n\nCc: stable@kernel.org\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a2cd43c52aa5c676b03d575177536e05ac672c75",
      "tree": "e62d1019851368daebb5cf99e1a6c25c2967f2df",
      "parents": [
        "d676ff493d9dfb8b34892214665028a8c85e2056"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Wed May 18 11:42:03 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 19 13:54:17 2011 -0400"
      },
      "message": "nl80211: remove some stack variables in trigger_scan and start_sched_scan\n\nSome stack variables (name *ssid and *channel) are only used to define\nthe size of the memory block that needs to be allocated for the\nrequest structure in the nl80211_trigger_scan() and\nnl80211_start_sched_scan() functions.\n\nThis is unnecessary because the sizes of the actual elements in the\nstructure can be used instead.\n\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "57cf8043a64b56a10b9f194572548a3dfb62e596",
      "tree": "a0b9530e824c7e7b1417e20f87e800819abfe285",
      "parents": [
        "108697c44b8e50bea3505c6bf9667da4627cb2d5"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Fri May 13 10:45:43 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 16 14:10:49 2011 -0400"
      },
      "message": "nl80211: Move peer link state definition to nl80211\n\nThese definitions need to be exposed now that we can set the peer link\nstates via NL80211_ATTR_STA_PLINK_STATE.  They were already being\n(opaquely) reported by NL80211_STA_INFO_PLINK_STATE.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7527a782e187d1214a5b3dc2897ce441033bb4ef",
      "tree": "3310adf988e72cb91736c0638d4c17edcccebfe1",
      "parents": [
        "805d7d23ef9806e47b550ad80270c4cea4ffc984"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri May 13 10:58:57 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 16 14:10:40 2011 -0400"
      },
      "message": "cfg80211: advertise possible interface combinations\n\nAdd the ability to advertise interface combinations in nl80211.\nThis allows the driver to indicate what the combinations are\nthat it supports. \"Combinations\" of just a single interface are\nimplicit, as previously. Note that cfg80211 will enforce that\nthe restrictions are met, but not for all drivers yet (once all\ndrivers are updated, we can remove the flag and enforce for all).\n\nWhen no combinations are actually supported, an empty list will\nbe exported so that userspace can know if the kernel exported\nthis info or not (although it isn\u0027t clear to me what tools using\nthe info should do if the kernel didn\u0027t export it).\n\nSince some interface types are purely virtual/software and don\u0027t\nfit the restrictions, those are exposed in a new list of pure SW\ntypes, not subject to restrictions. This mainly exists to handle\nAP-VLAN and monitor interfaces in mac80211.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "56d1893d94bc06d0b1aa3a53f924ed02f9e207bf",
      "tree": "90862ae6788cf267631bd9ddebf4bc450d0d2b26",
      "parents": [
        "15cb309614f35df344b9f06a9ea9f077d1e449db"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon May 09 18:41:15 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 12 14:10:47 2011 -0400"
      },
      "message": "cfg80211: restrict AP beacon intervals\n\nMultiple virtual AP interfaces can currently try\nto use different beacon intervals, but that just\nleads to problems since it won\u0027t actually be done\nthat way by drivers. Return an error in this case\nto make sure it won\u0027t be done wrong.\n\nAlso, ignore attempts to change the DTIM period\nor beacon interval during the lifetime of the BSS.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bbe6ad6dcb1eb26bd12ec85320f402721c3383ae",
      "tree": "08e7e3491caa30e22c9c38d9d3a8728a02adc0c5",
      "parents": [
        "79f460ca49d8d5700756ab7071c951311c7f29cc"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Wed May 11 17:09:37 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 15:12:27 2011 -0400"
      },
      "message": "cfg80211/nl80211: add interval attribute for scheduled scans\n\nIntroduce NL80211_ATTR_SCHED_SCAN_INTERVAL as a required attribute for\nNL80211_CMD_START_SCHED_SCAN.  This value informs the driver at which\nintervals the scheduled scan cycles should be executed.\n\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "807f8a8c300435d5483e8d78df9dcdbc27333166",
      "tree": "1537d40e149d7a8712fe63d17ea3b51093bf03a1",
      "parents": [
        "6bdbdbf4a151a3a1333818cd17a7d7795e936041"
      ],
      "author": {
        "name": "Luciano Coelho",
        "email": "coelho@ti.com",
        "time": "Wed May 11 17:09:35 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 15:12:26 2011 -0400"
      },
      "message": "cfg80211/nl80211: add support for scheduled scans\n\nImplement new functionality for scheduled scan offload.  With this feature we\ncan scan automatically at certain intervals.\n\nThe idea is that the hardware can perform scan automatically and filter on\ndesired results without waking up the host unnecessarily.\n\nAdd NL80211_CMD_START_SCHED_SCAN and NL80211_CMD_STOP_SCHED_SCAN\ncommands to the nl80211 interface.  When results are available they are\nreported by NL80211_CMD_SCHED_SCAN_RESULTS events.  The userspace is\ninformed when the scheduled scan has stopped with a\nNL80211_CMD_SCHED_SCAN_STOPPED event, which can be triggered either by\nthe driver or by a call to NL80211_CMD_STOP_SCHED_SCAN.\n\nSigned-off-by: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1833d81a1229adeab98f275b47624d66462561e5",
      "tree": "7dd9b45aba5f8d9ad47eaaed78ca2592e607ae0d",
      "parents": [
        "28104cae63708d1790cd71db8a45af50d5ea5a92"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Tue May 03 16:57:18 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:50:36 2011 -0400"
      },
      "message": "mac80211: allow setting supported rates on mesh peers\n\nThis is necessary for userspace managed stations.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8429828ec96b66b6861e9fabebec007e9e132370",
      "tree": "235ecff2d762d55a4a4404a45e73ad2d25a656eb",
      "parents": [
        "ff973af74aa6932ca4758266bccec68e8135ddf7"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Tue May 03 16:57:13 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:44:47 2011 -0400"
      },
      "message": "nl80211: allow setting MFP flag for a meshif\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff973af74aa6932ca4758266bccec68e8135ddf7",
      "tree": "4d18994cffe190d50acaae4ecce1c3684186f063",
      "parents": [
        "9c3990aaec0ad9f686ef6480f6861f2df89b2a7a"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Tue May 03 16:57:12 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:44:47 2011 -0400"
      },
      "message": "nl80211: allow installing keys for a meshif\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9c3990aaec0ad9f686ef6480f6861f2df89b2a7a",
      "tree": "5e073ffce0ce0aed45e9dfeb9f41efc140c770f7",
      "parents": [
        "0a35d36d6f019bde6c98812456798275b02e5aee"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Tue May 03 16:57:11 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:44:46 2011 -0400"
      },
      "message": "nl80211: Let userspace drive the peer link management states.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b130e5cec958bae3867cf6ab09a9b24ba8fada01",
      "tree": "945eca0ace3d299dfd83de7b7e13c60aa36ba2e9",
      "parents": [
        "f3a57fd148a4afd3c38f558c5b44972cb29ea8ba"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Tue May 03 16:57:07 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 11 14:37:47 2011 -0400"
      },
      "message": "nl80211: Introduce NL80211_MESH_SETUP_USERSPACE_AMPE\n\nIntroduce a new configuration option to support AMPE from userspace.\n\nPrior to this series we only supported authentication in userspace: an\nauthentication daemon would authenticate peer candidates in userspace\nand hand them over to the kernel.  From that point the mesh stack would\ntake over and establish a peer link (Mesh Peering Management).\n\nThese patches introduce support for Authenticated Mesh Peering Exchange\nin userspace.  The userspace daemon implements the AMPE protocol and on\nsuccessfull completion create mesh peers and install encryption keys.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ff1b6e69ad4f31fb3c9c6da2665655f2e798dd70",
      "tree": "6fc049fd0389ffb382ea401096d7bd665642af5c",
      "parents": [
        "8f7f3b2fcc4ccbba0be776049df41a2f96c986ac"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed May 04 15:37:28 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 05 14:59:19 2011 -0400"
      },
      "message": "nl80211/cfg80211: WoWLAN support\n\nThis is based on (but now quite far from) the\noriginal work from Luis and Eliad. Add support\nfor configuring WoWLAN triggers, and getting\nthe configuration out again. Changes from the\noriginal patchset are too numerous to list,\nbut one important change needs highlighting:\nthe suspend() callback is passed NULL for the\ntrigger configuration if userspace has not\nconfigured WoWLAN at all.\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: Eliad Peller \u003celiad@wizery.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0e579d6a8f4aea346da818f13ee71401c125e639",
      "tree": "5a4efd3d824f6b246e43e8a8ced4b58494710423",
      "parents": [
        "270e58e8898c8be40451ebee45b6c9b5bd5db04b"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Tue May 03 22:45:16 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 05 14:59:16 2011 -0400"
      },
      "message": "nl80211: Fix set_key regression with some drivers\n\nCommit dbd2fd656f2060abfd3a16257f8b51ec60f6d2ed added a mechanism for\nuser space to indicate whether a default key is being configured for\nonly unicast or only multicast frames instead of all frames. This\ncommit added a driver capability flag for indicating whether separate\ndefault keys are supported and validation of the set_key command based\non that capability.\n\nHowever, this single capability flag is not enough to cover possible\ndifference based on mode (AP/IBSS/STA) and the way this change was\nintroduced resulted in a regression with drivers that do not indicate\nthe new capability (i.e.., more or less any non-mac80211 driver using\ncfg80211) when using a recent wpa_supplicant snapshot.\n\nFix the regression by removing the new check which is not strictly\nspeaking needed. The new separate default key functionality is needed\nonly for RSN IBSS which has a separate capability indication.\n\nCc: stable@kernel.org\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ebe27c91af8b7f4810ae906fbd3eeb2d87850026",
      "tree": "eff1fe0dbb8ecb4b116d8f96c6beb3eda1c52c7a",
      "parents": [
        "f60c49b67dd6db2ccb740a6a671414f9dab00c4f"
      ],
      "author": {
        "name": "Mohammed Shafi Shajakhan",
        "email": "mshajakhan@atheros.com",
        "time": "Fri Apr 08 21:24:24 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:58:47 2011 -0400"
      },
      "message": "{mac|nl}80211: Add station connected time\n\nAdd station connected time in debugfs. This will be helpful to get a\nmeasure of stability of the connection and for debugging stress issues\n\nCc: Senthilkumar Balasubramanian \u003cSenthilkumar.Balasubramanian@Atheros.com\u003e\nSigned-off-by: Mohammed Shafi Shajakhan \u003cmshajakhan@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c93b5e717ec47b57abfe0229360bc11e77520984",
      "tree": "1e6f703c3c1b1c2e55b759b4e992ef04e81f973e",
      "parents": [
        "96b78dff0321d881ef27d858a462c476e0444619"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:34 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:39 2011 -0400"
      },
      "message": "nl80211: New notification to discover mesh peer candidates.\n\nNotify userspace when a beacon/presp is received from a suitable mesh\npeer candidate for whom no sta information exists.  Userspace can then\ndecide to create a sta info for the candidate.  If userspace is not\nready to authenticate the peer right away, it can create the sta info\nwith the authenticated flag unset and set it later.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "96b78dff0321d881ef27d858a462c476e0444619",
      "tree": "ef81668e545ec6373e0793c98add1533e2435f44",
      "parents": [
        "53e805111b69d55834f4e1ed0a31a97ea0b9e425"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:33 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:39 2011 -0400"
      },
      "message": "nl80211/mac80211: Perform PLINK_ACTION on new station\n\nModify the NEW_STATION command to accept PLINK_ACTIONS, in case\nuserspace wants to create stations and initiate a peer link right away\n(for authenticated stations) or create a blocked station (for\ndebugging).\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b39c48fac1fc915a5dcd024bf6e9aabc855ed591",
      "tree": "d8c5d6e987f388b8c8769d16a51a07dfcd9c3539",
      "parents": [
        "5cff5e01e818029a5d2c3c31b7ae5e5e7ee70452"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:30 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:38 2011 -0400"
      },
      "message": "nl80211/mac80211: let userspace authenticate stations\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "15d5dda623139bbf6165030fc251bbd5798f4130",
      "tree": "3adb84ef7d65fd274008d950ad99434e1a3a28a7",
      "parents": [
        "581a8b0feeed8877aab3a8ca4c972419790cd07f"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:28 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:37 2011 -0400"
      },
      "message": "cfg80211/nl80211: Add userspace authentication flag to mesh setup\n\nDuring mesh setup, use NL80211_MESH_SETUP_USERSPACE_AUTH flag to create\na secure mesh and route management frames to userspace.\n\nAlso, NL80211_CMD_GET_WIPHY now returns a flag NL80211_SUPPORT_MESH_AUTH\nif the wiphy\u0027s mesh implementation supports routing of mesh auth frames\nto userspace.  This is useful for forward compatibility between old\nkernels and new userspace tools.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "581a8b0feeed8877aab3a8ca4c972419790cd07f",
      "tree": "36ef0e86b367e0abeb0a50fbf59840f125efdbc7",
      "parents": [
        "a22e93f5d819f11d2a2d6332e20ff5b462e5c208"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Apr 07 15:08:27 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 12 16:57:37 2011 -0400"
      },
      "message": "nl80211: rename NL80211_MESH_SETUP_VENDOR_PATH_SEL_IE\n\nTo NL80211_MESH_SETUP_IE. This reflects our ability to insert any ie\ninto a mesh beacon, not simply path selection ies.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f4263c9857e6411ef2388868cc6c79a1602a654e",
      "tree": "2eec220076c4d56a2460e185076cda6646ef2f9f",
      "parents": [
        "8447c163afeaa7e9f6f015088177b1c8511e0877"
      ],
      "author": {
        "name": "Paul Stewart",
        "email": "pstew@chromium.org",
        "time": "Thu Mar 31 09:25:41 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Apr 07 15:34:12 2011 -0400"
      },
      "message": "nl80211: Add BSS parameters to station\n\nThis allows user-space monitoring of BSS parameters for the associated\nstation.  This is useful for debugging and verifying that the paramaters\nare as expected.\n\n[Exactly the same as before but bundled into a single message]\n\nSigned-off-by: Paul Stewart \u003cpstew@chromium.org\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ec15e68ba6a505631016f230899bafbb7b8cd0d6",
      "tree": "21190a10af3c22ccd34b03f11088b5976ef3e34b",
      "parents": [
        "cfdc9a8bb8d90c6aa212a5a881862599673c443d"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Wed Mar 23 15:29:52 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 30 14:15:18 2011 -0400"
      },
      "message": "cfg80211: Add nl80211 event for deletion of a station entry\n\nIndicate an NL80211_CMD_DEL_STATION event when a station entry in\nmac80211 is deleted to match with the NL80211_CMD_NEW_STATION event\nthat is used when the entry was added. This is needed, e.g., to allow\nuser space to remove a peer from RSN IBSS Authenticator state machine\nto avoid re-authentication and re-keying delays when the peer is not\nreachable anymore.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c8dcfd8a046c1f49af0c15726761af17b957962d",
      "tree": "f021e2f1b9587c1f9b6c871c75881e81422ad280",
      "parents": [
        "e7a2a4f5e61ccfae03185384e06b852dbb1e3630"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Feb 27 22:08:00 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 01 13:48:21 2011 -0500"
      },
      "message": "cfg80211: add a field for the bitrate of the last rx data packet from a station\n\nAlso fix a typo in the STATION_INFO_TX_BITRATE description\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "efe1cf0c5743caf4daccb57b399ef63edad41c9d",
      "tree": "d482979aa5a16a49d8095dcf00b6023c9051b86f",
      "parents": [
        "76a9f6fd9adc5ce62b4ea36a099bb1458d4cb7a6"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Fri Jan 28 15:17:11 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 28 15:46:23 2011 -0500"
      },
      "message": "net/wireless/nl80211.c: Avoid call to genlmsg_cancel\n\ngenlmsg_cancel subtracts some constants from its second argument before\ncalling nlmsg_cancel.  nlmsg_cancel then calls nlmsg_trim on the same\narguments.  nlmsg_trim tests for NULL before doing any computation, but a\nNULL second argument to genlmsg_cancel is no longer NULL due to the initial\nsubtraction.  Nothing else happens in this execution, so the call to\ngenlmsg_cancel is simply unnecessary in this case.\n\nThe semantic match that finds this problem is as follows:\n(http://coccinelle.lip6.fr/)\n\n// \u003csmpl\u003e\n@@\nexpression data;\n@@\n\nif (data \u003d\u003d NULL) { ...\n* genlmsg_cancel(..., data);\n  ...\n  return ...;\n}\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "39fd5de4472b7b222c6cec78d72b069133f694e4",
      "tree": "81dd5a546598a1b09d3a48ca0f001b375ad91acb",
      "parents": [
        "7f531e03abf0162df3966c4fa5fa6fdd9302cb6b"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Thu Dec 16 11:30:28 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:49:47 2010 -0500"
      },
      "message": "nl80211: Export available antennas\n\nExport the information which antennas are available for configuration as TX or\nRX antennas via nl80211.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "7f531e03abf0162df3966c4fa5fa6fdd9302cb6b",
      "tree": "b5e91c5ee9580e942749768e96421c1e55c3491b",
      "parents": [
        "c7108a7111cd9e592d6ad498be37276dbea75d2b"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Thu Dec 16 11:30:22 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:46:58 2010 -0500"
      },
      "message": "cfg80211: Separate available antennas for RX and TX\n\nAs has been pointed out by Daniel Halperin some devices (e.g. Intel IWL5100)\ncan only TX from a subset of RX antennas, so use separate availability masks\nfor RX and TX.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c7108a7111cd9e592d6ad498be37276dbea75d2b",
      "tree": "dab25dbb5607c4151629bf747ee10b4487772419",
      "parents": [
        "c80d545da3f7c0e534ccd4a780f322f80a92cff1"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Dec 16 17:37:50 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:46:58 2010 -0500"
      },
      "message": "mac80211: Send mesh non-HWMP path selection frames to userspace\n\nLet path selection frames for protocols other than HWMP be sent to\nuserspace via NL80211_CMD_REGISTER_FRAME.  Also allow userspace to send\nand receive mesh path selection frames.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c80d545da3f7c0e534ccd4a780f322f80a92cff1",
      "tree": "edd5c51676b4677fc1a0b2fc692ffe97df863f25",
      "parents": [
        "24bdd9f4c9af75b33b438d60381a67626de0128d"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Dec 16 17:37:49 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:46:57 2010 -0500"
      },
      "message": "mac80211: Let userspace enable and configure vendor specific path selection.\n\nUserspace will now be allowed to toggle between the default path\nselection algorithm (HWMP, implemented in the kernel), and a vendor\nspecific alternative.  Also in the same patch, allow userspace to add\ninformation elements to mesh beacons.  This is accordance with the\nExtensible Path Selection Framework specified in version 7.0 of the\n802.11s draft.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "24bdd9f4c9af75b33b438d60381a67626de0128d",
      "tree": "f5ff8c4f9ec2a7cdb976f419532179f2c46b06e8",
      "parents": [
        "8a09d6d80c90c02f2f8c89f69c702cab0c8d9b42"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Thu Dec 16 17:37:48 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 20 14:46:57 2010 -0500"
      },
      "message": "mac80211: Rename mesh_params to mesh_config to prepare for mesh_setup\n\nMesh parameters can be to setup a mesh or to configure it.\nThis patch renames the ambiguous name mesh_params to mesh_config\nin preparation for mesh_setup.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "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": "a293911d4fd5e8593dbf478399a77f990d466269",
      "tree": "826f614f178e915c4d2c08aba9ca5b2a38f78c75",
      "parents": [
        "14a085e77063090fb12ad391d0f4d46e593be225"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Dec 14 17:54:28 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 15 17:03:56 2010 -0500"
      },
      "message": "nl80211: advertise maximum remain-on-channel duration\n\nWith the upcoming hardware offload implementation,\nsome devices will have a different maximum duration\nfor the remain-on-channel command. Advertise the\nmaximum duration in mac80211, and make mac80211 set\nit.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dbd2fd656f2060abfd3a16257f8b51ec60f6d2ed",
      "tree": "71e61430bd8593f2ad8f1c741b5a8a8be4a9d690",
      "parents": [
        "897bed8b4320774e56f282cdc1cceb4d77442797"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Dec 09 19:58:59 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 13 15:23:28 2010 -0500"
      },
      "message": "cfg80211/nl80211: separate unicast/multicast default TX keys\n\nAllow userspace to specify that a given key\nis default only for unicast and/or multicast\ntransmissions. Only WEP keys are for both,\nWPA/RSN keys set here are GTKs for multicast\nonly. For more future flexibility, allow to\nspecify all combiations.\n\nWireless extensions can only set both so use\nnl80211; WEP keys (connect keys) must be set\nas default for both (but 802.1X WEP is still\npossible).\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a7ffac9591a2a0ee74c431396ae475a8d0caa51e",
      "tree": "174134b89e490592003307263e6b3964d9a1eacf",
      "parents": [
        "a08e7ade9ddf4fe79576f953cc5c1725e944d26c"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Dec 08 13:59:24 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 13 15:23:27 2010 -0500"
      },
      "message": "cfg80211: Add antenna availability information\n\nAdd a field to wiphy for the hardware to report the availble antennas for\nconfiguration. Only if this is set to something bigger than zero, will the\nanntenna configuration ops be executed.\n\nAllthough this could be a simple number of antennas, I defined it as a bitmap\nof antennas which are available for configuration, since it\u0027s more consistent\nwith the rest of the antenna API and there could be cases where the\nhardware allows only configuration of certain antennas. As it does not make\nmuch of a difference in size or normal usage, I think it\u0027s better to be able to\nsupport this, in case the need arises.\n\nThe antenna configuration is now also checked against the availabe antennas and\nrejected if it does not match.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\n\n--\nv3:\talways apply available antenna mask (for \"all\" antennas case).\n\nv2:\treject antenna configurations which don\u0027t match the available antennas\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "50b12f597be354a5a224f05c65c54c0667e57aec",
      "tree": "db4c59639d3d1bc013a2c3d7e17c47db2f94efc0",
      "parents": [
        "7659a193f94c0003dd06e9e874d19bade1a8c952"
      ],
      "author": {
        "name": "Helmut Schaa",
        "email": "helmut.schaa@googlemail.com",
        "time": "Fri Nov 19 12:40:25 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 08 15:38:43 2010 -0500"
      },
      "message": "cfg80211: Add new BSS attribute ht_opmode\n\nAdd a new BSS attribute to allow hostapd to set the current HT opmode.\nOtherwise drivers won\u0027t be able to set up protection for HT rates in\nAP mode.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "541a45a142df281c974d74eac2066138fc107b23",
      "tree": "b96f4808c3f17f2f560db9569ca2b08dba9eab67",
      "parents": [
        "22de94de7de78b8de2fb1f2df5aa85b5556cfcfd"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Thu Dec 02 19:12:43 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 07 16:09:12 2010 -0500"
      },
      "message": "nl80211/mac80211: Report signal average\n\nExtend nl80211 to report an exponential weighted moving average (EWMA) of the\nsignal value. Since the signal value usually fluctuates between different\npackets, an average can be more useful than the value of the last packet.\n\nThis uses the recently added generic EWMA library function.\n\n--\nv2:\tfix ABI breakage and change factor to be a power of 2.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "29cbe68c516a48a9a88b3226878570c6cbd83c02",
      "tree": "4774f8a3a244236234a521baa4d1ae5b3e1494ba",
      "parents": [
        "bd90fdcc5fbd99a2a778999610420cf793bd1be2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Dec 03 09:20:44 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 06 16:01:29 2010 -0500"
      },
      "message": "cfg80211/mac80211: add mesh join/leave commands\n\nInstead of tying mesh activity to interface up,\nadd join and leave commands for mesh. Since we\nmust be backward compatible, let cfg80211 handle\njoining a mesh if a mesh ID was pre-configured\nwhen the device goes up.\n\nNote that this therefore must modify mac80211 as\nwell since mac80211 needs to lose the logic to\nstart the mesh on interface up.\n\nWe now allow querying mesh parameters before the\nmesh is connected, which simply returns defaults.\nSetting them (internally renamed to \"update\") is\nonly allowed while connected. Specify them with\nthe new mesh join command instead where needed.\n\nIn mac80211, beaconing must now also follow the\nmesh enabled/not enabled state, which is done\nby testing the mesh ID.\n\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bd90fdcc5fbd99a2a778999610420cf793bd1be2",
      "tree": "18019688bd7edb6432f5f12ac258e6cf81ee9e61",
      "parents": [
        "f9e10ce4cf86945eb5efcab31284c971877ed012"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Dec 03 09:20:43 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 06 16:01:29 2010 -0500"
      },
      "message": "nl80211: refactor mesh parameter parsing\n\nI\u0027m going to need this in a new place later.\n\nTested-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f9e10ce4cf86945eb5efcab31284c971877ed012",
      "tree": "a56ec8ed84019901bf92aa969e366afb8b8ce36b",
      "parents": [
        "09b174702601079c3a04806754be30ffbd70db4d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Dec 03 09:20:42 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 06 16:01:28 2010 -0500"
      },
      "message": "cfg80211: require add_virtual_intf to return new dev\n\ncfg80211 used to do all its bookkeeping in\nthe notifier, but some new stuff will have\nto use local variables so make the callback\nreturn the netdev pointer.\n\nTested-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "45904f21655cf4f0ae7d0fab5906fe51bf56ecf4",
      "tree": "fd023d65b881b6cfcf1529eed7c1ad2523c166e1",
      "parents": [
        "b9e61f11f47035e3b4545b51fb547fef48eb3096"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Fri Dec 03 09:20:40 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 06 16:01:28 2010 -0500"
      },
      "message": "nl80211/mac80211: define and allow configuring mesh element TTL\n\nThe TTL in path selection information elements is different from\nthe mesh ttl used in mesh data frames.  Version 7.03 of the 11s\ndraft calls this ttl \u0027Element TTL\u0027.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\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": "dd5b4cc71cd09c33e1579cc6d5720656e94e52de",
      "tree": "86a27c86480109d9b6bbedddc083095035fbef2d",
      "parents": [
        "46090979a55a0dc2cdb3d939f94fa47742108194"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Mon Nov 22 20:58:24 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:35 2010 -0500"
      },
      "message": "cfg80211/mac80211: improve ad-hoc multicast rate handling\n\n- store the multicast rate as an index instead of the rate value\n  (reduces cpu overhead in a hotpath)\n- validate the rate values (must match a bitrate in at least one sband)\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d7a066c92394f3e777351de0c903beeb8a08af76",
      "tree": "f54ce8ac77d32b4c3166b4a2ca92525174a3213b",
      "parents": [
        "ccb14354017272ddac002e859a2711610b6af174",
        "e476a5a41ad67d0e2b4a652820c49a3923eb936b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:24 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:24 2010 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-2.6\n"
    },
    {
      "commit": "ccb14354017272ddac002e859a2711610b6af174",
      "tree": "fa39f9b944508e596763c49b0088dc1cc2e263ca",
      "parents": [
        "f8afa42b01c7a9f45b7cbaadb0481a0eeb96f18d"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:18:36 2010 -0500"
      },
      "message": "Revert \"nl80211/mac80211: Report signal average\"\n\nThis reverts commit 86107fd170bc379869250eb7e1bd393a3a70e8ae.\n\nThis patch inadvertantly changed the userland ABI.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "86107fd170bc379869250eb7e1bd393a3a70e8ae",
      "tree": "579ee24be87e94246450420f4de57d8eda942848",
      "parents": [
        "eef39befaae2a1559efe197d795c376a317af2af"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Tue Nov 16 10:58:48 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 18 14:22:20 2010 -0500"
      },
      "message": "nl80211/mac80211: Report signal average\n\nExtend nl80211 to report an exponential weighted moving average (EWMA) of the\nsignal value. Since the signal value usually fluctuates between different\npackets, an average can be more useful than the value of the last packet.\n\nThis uses the recently added generic EWMA library function.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "885a46d0f7942d76c2f3860acb45f75237d3bb42",
      "tree": "f116fcc9b8204f7a113693e307de76e4098ebb36",
      "parents": [
        "a619a4c0e1fd4e8c360c63d0df3fa0a401107d69"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Thu Nov 11 15:07:22 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:39:08 2010 -0500"
      },
      "message": "cfg80211: add support for setting the ad-hoc multicast rate\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "afe0cbf87500f0585d217deb8c6fd329793a7957",
      "tree": "a7e4f6db468e623961ab2b71ccf2bfb9c6756894",
      "parents": [
        "0e67d6cb753643fc076a90fa9309301b3fbfb8db"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Nov 10 12:50:50 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 16 16:37:05 2010 -0500"
      },
      "message": "cfg80211: Add nl80211 antenna configuration\n\nAllow setting of TX and RX antennas configuration via nl80211.\n\nThe antenna configuration is defined as a bitmap of allowed antennas to use.\nThis API can be used to mask out antennas which are not attached or should not\nbe used for other reasons like regulatory concerns or special setups.\n\nSeparate bitmaps are used for RX and TX to allow configuring different antennas\nfor receiving and transmitting. Each bitmap is 32 bit long, each bit\nrepresenting one antenna, starting with antenna 1 at the first bit. If an\nantenna bit is set, this means the driver is allowed to use this antenna for RX\nor TX respectively; if the bit is not set the hardware is not allowed to use\nthis antenna.\n\nUsing bitmaps has the benefit of allowing for a flexible configuration\ninterface which can support many different configurations and which can be used\nfor 802.11n as well as non-802.11n devices. Instead of relying on some hardware\nspecific assumptions, drivers can use this information to know which antennas\nare actually attached to the system and derive their capabilities based on\nthat.\n\n802.11n devices should enable or disable chains, based on which antennas are\npresent (If all antennas belonging to a particular chain are disabled, the\nentire chain should be disabled). HT capabilities (like STBC, TX Beamforming,\nAntenna selection) should be calculated based on the available chains after\napplying the antenna masks. Should a 802.11n device have diversity antennas\nattached to one of their chains, diversity can be enabled or disabled based on\nthe antenna information.\n\nNon-802.11n drivers can use the antenna masks to select RX and TX antennas and\nto enable or disable antenna diversity.\n\nWhile covering chainmasks for 802.11n and the standard \"legacy\" modes \"fixed\nantenna 1\", \"fixed antenna 2\" and \"diversity\" this API also allows more rare,\nbut useful configurations as follows:\n\n1) Send on antenna 1, receive on antenna 2 (or vice versa). This can be used to\nhave a low gain antenna for TX in order to keep within the regulatory\nconstraints and a high gain antenna for RX in order to receive weaker signals\n(\"speak softly, but listen harder\"). This can be useful for building long-shot\noutdoor links. Another usage of this setup is having a low-noise pre-amplifier\non antenna 1 and a power amplifier on the other antenna. This way transmit\nnoise is mostly kept out of the low noise receive channel.\n(This would be bitmaps: tx 1 rx 2).\n\n2) Another similar setup is: Use RX diversity on both antennas, but always send\non antenna 1. Again that would allow us to benefit from a higher gain RX\nantenna, while staying within the legal limits.\n(This would be: tx 0 rx 3).\n\n3) And finally there can be special experimental setups in research and\ndevelopment even with pre 802.11n hardware where more than 2 antennas are\navailable. It\u0027s good to keep the API simple, yet flexible.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\n\n--\nv7:\tMade bitmasks 32 bit wide and rebased to latest wireless-testing.\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3cc25e510dfc36dc62ee0aa87344b36ed7c1742a",
      "tree": "aa485987c383ac5c2843e1f3d7b3eb3a628f111b",
      "parents": [
        "8df86db9060ddd123d172c7adb6b2b71f31e77cd"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sun Oct 31 15:31:54 2010 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 08 16:53:47 2010 -0500"
      },
      "message": "cfg80211: fix a crash in dev lookup on dump commands\n\nIS_ERR and PTR_ERR were called with the wrong pointer, leading to a\ncrash when cfg80211_get_dev_from_ifindex fails.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8610c29a2c9f273886b1c31ae4d92c69d4326262",
      "tree": "c0424e55a67e0a2a1c7f1d72a9d807c442da5a9c",
      "parents": [
        "15943a72c7d2031c9150917ca9161a9f891d455a"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Sat Oct 09 02:39:29 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Oct 11 15:04:20 2010 -0400"
      },
      "message": "cfg80211: add channel utilization stats to the survey command\n\nUsing these, user space can calculate a relative channel utilization\nwith arbitrary intervals by regularly taking snapshots of the survey\nresults.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "388ac775be95e510c2095ed6cd59422a5183a9fb",
      "tree": "bbdb6f1b5aa46ec8ebb5c1eccdd4934082a66094",
      "parents": [
        "43b19952de54b0fccfcdc5968891ebe550367fe8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Oct 07 13:11:09 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Oct 07 14:41:28 2010 -0400"
      },
      "message": "cfg80211: constify WDS address\n\nThere\u0027s no need for the WDS peer address\nto not be const, so make it const.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "43b19952de54b0fccfcdc5968891ebe550367fe8",
      "tree": "2657f6820dfbaaaab1aa3dc4af48ecbeef363a89",
      "parents": [
        "7b99a7c2dab7efe7c265b66fedbf3444958ebfe3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Oct 07 13:10:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Oct 07 14:41:27 2010 -0400"
      },
      "message": "nl80211: use new genl helpers for WDS\n\nBill Jordan\u0027s patch to allow setting the WDS\npeer crossed with my patch removing all the\nboilerplate code in nl80211, and consequently\nhe didn\u0027t make use of it yet. Fix that.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b206b4ef062d83c0875a085672ed50e8c8b01521",
      "tree": "f182cc272055f7b646bc62a5d37fb097a8fd07cc",
      "parents": [
        "09be251e9005ebd67e5eabcaad904edb7ecacc55"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Wed Oct 06 18:34:12 2010 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:43 2010 -0400"
      },
      "message": "nl80211/mac80211: Add retry and failed transmission count to station info\n\nThis information is already available in mac80211, we just need to export it\nvia cfg80211 and nl80211.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d537f5fdfcc9c57c1e3b9fb316a4bed2bf7597e7",
      "tree": "b81381e11aad48e7f068b061d037e5ac190a6211",
      "parents": [
        "e31b82136d1adc7a599b6e99d3321e5831841f5a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 21:34:11 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:41 2010 -0400"
      },
      "message": "nl80211: fix error in generic netif_running check\n\nYikes! The error return keeps a netdev reference\nand the rdev mutex locked, fix that!\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e31b82136d1adc7a599b6e99d3321e5831841f5a",
      "tree": "c72d78d4cccfd08587e909c7efe59956f1cbc23e",
      "parents": [
        "53f73c09d64f1fa7d7e6e8b6bb7468d42eddc92d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Oct 05 19:39:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Oct 06 16:30:40 2010 -0400"
      },
      "message": "cfg80211/mac80211: allow per-station GTKs\n\nThis adds API to allow adding per-station GTKs,\nupdates mac80211 to support it, and also allows\ndrivers to remove a key from hwaccel again when\nthis may be necessary due to multiple GTKs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6774889314ba507483e63c014fcb81adfc127202",
      "tree": "698dcdc2e1d26b3bd5595bba2a553b6107ee1a07",
      "parents": [
        "41265714810e20d91ddd7aaca30043b0f12190ad"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Oct 04 21:14:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:37:51 2010 -0400"
      },
      "message": "nl80211: reduce dumping boilerplate\n\nConsolidate boilerplate code needed for .dumpit\ncalls operating on netdevs.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "41265714810e20d91ddd7aaca30043b0f12190ad",
      "tree": "e69d25e8af99c0df71ffaa3746ab32d3e938d641",
      "parents": [
        "4c476991062a0a59523c2bf193f09087f469686a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Oct 04 21:14:05 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:37:51 2010 -0400"
      },
      "message": "nl80211: use generic check for netif_running\n\nUse a new flag that requires the netdev to be\nUP and use it to check instead of coding the\ncheck into all functions that require it.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4c476991062a0a59523c2bf193f09087f469686a",
      "tree": "d7342b806c285f7b0987386c3d5157230f858c43",
      "parents": [
        "ff4c92d85c6f2777d2067f8552e7fefb4d1754ae"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Oct 04 21:36:35 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:37:51 2010 -0400"
      },
      "message": "nl80211: use the new genetlink pre/post_doit hooks\n\nThis makes nl80211 use the new genetlink\npre_doit/post_doit hooks for locking and\nchecking the interface/wiphy index.\n\nThis significantly reduces the code size\nand the likelihood of locking errors.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e8347ebad2f1b15bddb6ed3ed5f767531eb52dc3",
      "tree": "02fa4846517ea56b06c0c6ad40d5870ca321153a",
      "parents": [
        "e51f3eff9a7e17ddd749799d4291f7e33e9883b9"
      ],
      "author": {
        "name": "Bill Jordan",
        "email": "bjordan@ig88.(none)",
        "time": "Fri Oct 01 13:54:28 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:24 2010 -0400"
      },
      "message": "cfg80211: patches to allow setting the WDS peer\n\nAdded a nl interface to set the peer bssid of a WDS interface.\n\nSigned-off-by: Bill Jordan \u003cbjordan@rajant.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "2234362c427e2ef667595b9b81c0125003ac5607",
      "tree": "a3cef2721184bd61bc058b299957c0fd2119db68",
      "parents": [
        "b1ae1edf9e9872d3aa657cc34ae40c9aadfbc72f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Sep 30 22:17:43 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:23 2010 -0400"
      },
      "message": "cfg80211: fix locking\n\nAdd missing unlocking of the wiphy in set_channel,\nand don\u0027t try to unlock a non-existing wiphy in\nset_cqm.\n\nCc: stable@kernel.org [2.6.35+]\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": "17e5a8082894a4b66cb69e7ec16074f0f01281e1",
      "tree": "604746f9c4aa8d77c41f1e22e9f553b5cdcfa823",
      "parents": [
        "0bda652300dff8136c9d889f1133462c7c7d332c"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Wed Sep 29 17:15:30 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Oct 05 13:35:22 2010 -0400"
      },
      "message": "nl80211: allow drivers to indicate whether the survey data channel is in use\n\nSome user space applications only want to display survey data for\nthe operating channel, however there is no API to get that yet.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "93b05238027420978d785569f8c1aa4a6867bc13",
      "tree": "8f391a9ea2438ed986d36b937fdbaf902e486187",
      "parents": [
        "dc4769f0bb949e312ad8d9b652047ff6709978c2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Sep 28 12:53:14 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 28 15:47:58 2010 -0400"
      },
      "message": "cfg80211: always set IBSS basic rates\n\nIBSS started from wireless extensions is currently\nmissing basic rate configuration, fix this by moving\nthe code to generate the default to the common code\nthat gets invoked for both nl80211 and wext.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "92e44948b2b3b2db8f39f17033f98ae2356156a5",
      "tree": "fd617ba0a5d939cbe03cfb579ee3e39c46fe2255",
      "parents": [
        "56af326830757f3e8a1742770d15dfd6e3c40e85"
      ],
      "author": {
        "name": "Teemu Paasikivi",
        "email": "ext-teemu.3.paasikivi@nokia.com",
        "time": "Fri Sep 24 07:23:55 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 27 15:57:47 2010 -0400"
      },
      "message": "nl80211: Fix exit from nl80211_set_power_save\n\nIf interface does not existk, when nl80211_set_power_save is called, (eg.\nmodule has been unloaded) it has been causing kernel panic. Added new\ngoto target to avoid crash if get_rdev_dev_by_info_ifindex does not\nreturn dev and rdev pointers.\n\nSigned-off-by: Teemu Paasikivi \u003cext-teemu.3.paasikivi@nokia.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": "a1e567c83f541432e687142570215b75bebb1338",
      "tree": "5b01247fedf95af42a502aceb28fc4ef6d2541db",
      "parents": [
        "942623166df3256821e8451273bc07737745e3cb"
      ],
      "author": {
        "name": "Bill Jordan",
        "email": "bjordan@rajant.com",
        "time": "Fri Sep 10 11:22:32 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 14 16:08:03 2010 -0400"
      },
      "message": "nl80211: Uninitialized variable\n\nThere is a path in nl80211_set_wiphy where result is tested but\nuninitialized.\n\nI am hitting this path when I attempt:\n\nsh# iw dev wlan0 set channel 10\ncommand failed: Unknown error 1069727332 (-1069727332)\n\nSigned-off-by: William Jordan \u003cbjordan@rajant.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "c0692b8fe29fb4d4dad33487aabf3ed7e1e880c0",
      "tree": "39c0c74c2270a285e1a0cfc7958ced7368cf28a6",
      "parents": [
        "3ffc2a905b1faae4c0fe39d66f0752c3a4cbb3c7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 14:26:53 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:27:07 2010 -0400"
      },
      "message": "cfg80211: allow changing port control protocol\n\nSome vendor specified mechanisms for 802.1X-style\nfunctionality use a different protocol than EAP\n(even if EAP is vendor-extensible). Allow setting\nthe ethertype for the protocol when a driver has\nsupport for this. The default if unspecified is\nEAP, of course.\n\nNote: This is suitable only for station mode, not\n      for AP implementation.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "74b70a4e38d542843fccfb367dce1ac861cc3890",
      "tree": "8bfd236b1daede68637c6238c7c9cb813dfa82f2",
      "parents": [
        "f8d8b7a13d3d61f99bf3dc5c9650f87f9818d7a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Aug 24 12:15:53 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Aug 25 14:34:56 2010 -0400"
      },
      "message": "nl80211: fix missing nesting\n\ncommit 95a6ccbb46c70cff376684c752831c014c87029d\nAuthor: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nDate:   Thu Aug 12 15:38:38 2010 +0200\n\n    cfg80211/mac80211: extensible frame processing\n\nintroduced a netlink bug that caused parsing errors\nin userspace because it forgot to close a nesting,\nwhich would advertise a nesting length of zero to\nuserspace, which then completely threw off parsing\nand led to\n\n\tIllegal nla-\u003enla_type \u003d\u003d 0\n\nbeing printed by libnl.\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": "afea0b7af7a0c070da8b2029d721abc930e5f96f",
      "tree": "df0879b5404880f74440e3c381215152d7c9794a",
      "parents": [
        "5daa8a8e691e28c6c725e7e91319b160b555c615"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue Aug 10 09:46:42 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 16 16:45:22 2010 -0400"
      },
      "message": "cfg80211: check if WEP is available for shared key auth\n\nWhen shared key auth is requested, cfg80211\nshould verify that the device is capable of\nWEP crypto which is required.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d080e2755d840ede60128cc914a070868ebabc1e",
      "tree": "3b69f97577346301bd250af4616e6d27c49fbfd8",
      "parents": [
        "e4ab7eb0aecbe56ac280486c61cd3f0f6c42870b"
      ],
      "author": {
        "name": "Yuri Ershov",
        "email": "ext-yuri.ershov@nokia.com",
        "time": "Tue Jun 29 15:08:07 2010 +0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 28 16:24:01 2010 -0400"
      },
      "message": "nl80211: Fix memory leaks\n\nIn case of errors during message composing msg should be freed after canceling.\n\nSigned-off-by: Yuri Kululin \u003cext-yuri.kululin@nokia.com\u003e\nSigned-off-by: Yuri Ershov \u003cext-yuri.ershov@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e300d955debdadf599c36e47eb0bc16f5976215c",
      "tree": "8fafcc789dc06e90665e6eee6388af228bbd2fd7",
      "parents": [
        "242647bcf8464860f173f3d4d4ab3490d3558518",
        "815868e7b5c207ba42d5b317ccc51f8112732268"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 13 15:57:29 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 13 15:57:29 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\tdrivers/net/wireless/wl12xx/wl1271_cmd.h\n"
    },
    {
      "commit": "60ea385ff279a18790a432d57a8302562aaa0f8d",
      "tree": "7459d36805687dcc9e7b6d56616c816f7b175079",
      "parents": [
        "f148cfdd9bc29c133d5728d8e98815ba8c01752e"
      ],
      "author": {
        "name": "Jiri Slaby",
        "email": "jirislaby@gmail.com",
        "time": "Wed Jul 07 15:02:46 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 07 15:48:18 2010 -0400"
      },
      "message": "NET: nl80211, fix lock imbalance and netdev referencing\n\nStanse found that nl80211_set_wiphy imporperly handles a lock and netdev\nreference and contains unreachable code. It is because there return statement\nisntead of assignment to result variable. Fix that.\n\nSigned-off-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Jouni Malinen \u003cj@w1.fi\u003e\nCc: Samuel Ortiz \u003csameo@linux.intel.com\u003e\nCc: linux-wireless@vger.kernel.org\nCc: netdev@vger.kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "05318bc905467237d4aa68a701f6e92a2b332218",
      "tree": "3b7577383bca50aeb442568aa16cf8f2167b8694",
      "parents": [
        "ea812ca1b06113597adcd8e70c0f84a413d97544",
        "88c1f4f6dffe66e2fed8e7e3276e091ee850bed0"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jul 01 17:34:14 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/libertas/host.h\n"
    },
    {
      "commit": "98d2ff8bec82fc35fe2008a187a5fef9241dab10",
      "tree": "5a443d79168c325aad8af755a88eca2a76342816",
      "parents": [
        "fa61cf70a6ae1089e459e4b59b2e8d8e90d8535e"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Wed Jun 23 12:12:38 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jun 24 15:42:37 2010 -0400"
      },
      "message": "nl80211: Add option to adjust transmit power\n\nThis patch adds transmit power setting type and transmit power level attributes\nto NL80211_CMD_SET_WIPHY in order to facilitate adjusting of the transmit power\nlevel of the device.\n\nThe added attributes allow selection of automatic, limited or fixed transmit\npower level, with the level definable in signed mBm format.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bb9c03d8a6893517737b16fdbeb54be3c73b3023",
      "tree": "35fa0d1defaaf94641963a49126d7bb475ffa4c6",
      "parents": [
        "4de57826810fd2cfeb2ab5c7d003ff9116b8f7ee",
        "abf52f86aa0a49a7377350cafa8f218c4cd227e7"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Jun 17 14:19:06 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n"
    },
    {
      "commit": "f350a0a87374418635689471606454abc7beaa3a",
      "tree": "c8210542a9848f6b5953b58d2ba1dbfb11715f14",
      "parents": [
        "a35e2c1b6d90544b3c688783869817628e5f9607"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Jun 15 06:50:45 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Tue Jun 15 11:48:58 2010 -0700"
      },
      "message": "bridge: use rx_handler_data pointer to store net_bridge_port pointer\n\nRegister net_bridge_port pointer as rx_handler data pointer. As br_port is\nremoved from struct net_device, another netdev priv_flag is added to indicate\nthe device serves as a bridge port. Also rcuized pointers are now correctly\ndereferenced in br_fdb.c and in netfilter parts.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fbd2c8dcbc69616d2e15b8a269a86b3a05d45aea",
      "tree": "4ae08bd02d5e0d317828300f3255824df732e4b3",
      "parents": [
        "7b9a4b001971c89f35d55180867753a612d17458"
      ],
      "author": {
        "name": "Teemu Paasikivi",
        "email": "ext-teemu.3.paasikivi@nokia.com",
        "time": "Mon Jun 14 12:55:31 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Jun 14 15:39:34 2010 -0400"
      },
      "message": "mac80211: Set basic rates while joining ibss network\n\nThis patch adds support to nl80211 and mac80211 to set basic rates when\njoining/creating ibss network.\n\nOriginal patch was posted by Johannes Berg on the linux-wireless posting list.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: Teemu Paasikivi \u003cext-teemu.3.paasikivi@nokia.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": "579d7534ca83235794b6d9ef3cd473ffc14e9d42",
      "tree": "516ece1ef5c0d97828f27fb5d23a824d0af18882",
      "parents": [
        "b6411fc23c70d7a9f57a0bfb35212ad92b5c2b5e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue May 18 14:36:34 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri May 21 14:40:01 2010 -0400"
      },
      "message": "cfg80211: add missing braces\n\nSpecifying a valid channel type will get\ngoto out rather than continuing, due to\nmissing braces. This affects both remain\non channel and action frame TX commands.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "cc755896a4274f11283bca32d1d658203844057a",
      "tree": "218970ece71df99f686b9416b7fd88b921690ebb",
      "parents": [
        "d250fe91ae129bff0968e685cc9c466d3a5e3482",
        "9459d59fbf0bc82ff4c804679fa8bc22788eca63"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 11 14:24:55 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 11 14:24:55 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\tdrivers/net/wireless/ath/ar9170/main.c\n"
    },
    {
      "commit": "f444de05d20e27cdd960c13fcbcfca3099f03143",
      "tree": "a7fbef60420d88dda5840e06094be21ee3eb1dc0",
      "parents": [
        "ac8dd506e40ee2c7fcc61654a44c32555a0a8d6c"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed May 05 15:25:02 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri May 07 14:55:50 2010 -0400"
      },
      "message": "cfg80211/mac80211: better channel handling\n\nCurrently (all tested with hwsim) you can do stupid\nthings like setting up an AP on a certain channel,\nthen adding another virtual interface and making\nthat associate on another channel -- this will make\nthe beaconing to move channel but obviously without\nthe necessary IEs data update.\n\nIn order to improve this situation, first make the\nconfiguration APIs (cfg80211 and nl80211) aware of\nmulti-channel operation -- we\u0027ll eventually need\nthat in the future anyway. There\u0027s one userland API\nchange and one API addition. The API change is that\nnow SET_WIPHY must be called with virtual interface\nindex rather than only wiphy index in order to take\neffect for that interface -- luckily all current\nusers (hostapd) do that. For monitor interfaces, the\nold setting is preserved, but monitors are always\nslaved to other devices anyway so no guarantees.\n\nThe second userland API change is the introduction\nof a per virtual interface SET_CHANNEL command, that\nhostapd should use going forward to make it easier\nto understand what\u0027s going on (it can automatically\ndetect a kernel with this command).\n\nOther than mac80211, no existing cfg80211 drivers\nare affected by this change because they only allow\na single virtual interface.\n\nmac80211, however, now needs to be aware that the\nchannel settings are per interface now, and needs\nto disallow (for now) real multi-channel operation,\nwhich is another important part of this patch.\n\nOne of the immediate benefits is that you can now\nstart hostapd to operate on a hardware that already\nhas a connection on another virtual interface, as\nlong as you specify the same channel.\n\nNote that two things are left unhandled (this is an\nimprovement -- not a complete fix):\n\n * different HT/no-HT modes\n\n   currently you could start an HT AP and then\n   connect to a non-HT network on the same channel\n   which would configure the hardware for no HT;\n   that can be fixed fairly easily\n\n * CSA\n\n   An AP we\u0027re connected to on a virtual interface\n   might indicate switching channels, and in that\n   case we would follow it, regardless of how many\n   other interfaces are operating; this requires\n   more effort to fix but is pretty rare after all\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "83163244f845c296a118ce85c653872dbff6abfe",
      "tree": "ce2eac695a1c198f23d537e20ed86c16ece21f7e",
      "parents": [
        "0a12761bcd5646691c5d16dd93df84d1b8849285",
        "adfba3c7c026a6a5560d2a43fefc9b198cb74462"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 05 16:14:16 2010 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 05 16:14:16 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\tdrivers/net/wireless/libertas_tf/cmd.c\n\tdrivers/net/wireless/libertas_tf/main.c\n"
    },
    {
      "commit": "fd8aaaf3519f3fd3c82594e90bc6808072b94d54",
      "tree": "70ebab87226b597270c1d33b57955afac3e2f4fe",
      "parents": [
        "740c2679396d60763968ffd16362f1f5c8242172"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Tue Apr 27 01:23:35 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Apr 27 16:09:21 2010 -0400"
      },
      "message": "cfg80211: add ap isolation support\n\nThis is used to configure APs to not bridge traffic between connected stations.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\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": "d5d9de024c157a3dfbab191241c5c51e4d4c069a",
      "tree": "f05c33d67881e5a08a5650a5202602d1edcfb987",
      "parents": [
        "932d37c094b3c3410b4059f18f3b5c756bff059a"
      ],
      "author": {
        "name": "Marco Porsch",
        "email": "marco.porsch@siemens.com",
        "time": "Tue Mar 30 10:00:16 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:49:12 2010 -0400"
      },
      "message": "nl80211: reenable station del for mesh\n\niw dev \u003cdevname\u003e station del \u003cMAC address\u003e is quiet useful in mesh mode and should be possible.\n\nSigned-off-by: Marco Porsch \u003cmarco.porsch@siemens.com\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": "19bc291c99f018bd4f2c38bbf69144086dca903f",
      "tree": "9d3cf9bc0c5a78e363dc0547da8bcd1e7c394265",
      "parents": [
        "04488734806948624dabc4514f96f14cd75b9a50",
        "4a6967b88af02eebeedfbb91bc09160750225bb5"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:26:21 2010 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 25 23:26:21 2010 -0800"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next-2.6\n\nConflicts:\n\tdrivers/net/wireless/iwlwifi/iwl-core.h\n\tdrivers/net/wireless/rt2x00/rt2800pci.c\n"
    },
    {
      "commit": "ffb9eb3d8b450c22bbbc688c6b630141ac476fd9",
      "tree": "0e9677ea9df5b86fedf814236bf049a0f0435f6a",
      "parents": [
        "088ea189c4c75cdf211146faa4b341a0f7476be6"
      ],
      "author": {
        "name": "Kalle Valo",
        "email": "kalle.valo@nokia.com",
        "time": "Wed Feb 17 17:58:10 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 19 15:52:40 2010 -0500"
      },
      "message": "nl80211: add power save commands\n\nThe most needed command from nl80211, which Wireless Extensions had,\nis support for power save mode. Add a simple command to make it possible\nto enable and disable power save via nl80211.\n\nI was also planning about extending the interface, for example adding the\ntimeout value, but after thinking more about this I decided not to do it.\nBasically there were three reasons:\n\nFirstly, the parameters for power save are very much hardware dependent.\nTrying to find a unified interface which would work with all hardware, and\nstill make sense to users, will be very difficult.\n\nSecondly, IEEE 802.11 power save implementation in Linux is still in state\nof flux. We have a long way to still to go and there is no way to predict\nwhat kind of implementation we will have after few years. And because we\nneed to support nl80211 interface a long time, practically forever, adding\nnow parameters to nl80211 might create maintenance problems later on.\n\nThird issue are the users. Power save parameters are mostly used for\ndebugging, so debugfs is better, more flexible, interface for this.\nFor example, wpa_supplicant currently doesn\u0027t configure anything related\nto power save mode. It\u0027s better to strive that kernel can automatically\noptimise the power save parameters, like with help of pm qos network\nand other traffic parameters.\n\nLater on, when we have better understanding of power save, we can extend\nthis command with more features, if there\u0027s a need for that.\n\nSigned-off-by: Kalle Valo \u003ckalle.valo@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b54452b07a7b1b8cc1385edba3ef2ef6d4679d5a",
      "tree": "c8a7271b14c4cd9e0dc22a5d0a3bed9e79c88e36",
      "parents": [
        "3ffe533c87281b68d469b279ff3a5056f9c75862"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Thu Feb 18 08:14:31 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Feb 18 14:30:18 2010 -0800"
      },
      "message": "const: struct nla_policy\n\nMake remaining netlink policies as const.\nFixup coding style where needed.\n\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\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": "0e956c132f822d414a4ce84726ac1d1294364581",
      "tree": "f5c0d031606d3aa4abb6ac2468ce5263d1e17993",
      "parents": [
        "2f5265e6e785b2a666dd985ea157bc8c260be8fa"
      ],
      "author": {
        "name": "Thadeu Lima de Souza Cascardo",
        "email": "cascardo@holoscopio.com",
        "time": "Fri Feb 12 12:34:50 2010 -0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Feb 15 16:12:52 2010 -0500"
      },
      "message": "nl80211: does not allow NEW_STATION and DEL_STATION for mesh\n\nAs discussed in linux-wireless mailing list, adding and removing\nstations for mesh topologies is not necessary. Since doing it triggers\nbugs, the sugestion was to simply disable it.\n\nTested using a custom iw command \"station new\". Works only after using\nhostapd. \"station del\" command also works.\n\nSigned-off-by: Thadeu Lima de Souza Cascardo \u003ccascardo@holoscopio.com\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Simon Raffeiner \u003csturmflut@lieberbiber.de\u003e\nCc: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nCc: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "27e310c91c3433ab9997b925b3fd65e660634c76",
      "tree": "dffe44a679ad5fc809b0cbc7c9a86cedc46a7ace",
      "parents": [
        "1625c148cde23a8b4180e171ed4a17e17521b995"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Tue Jan 19 10:53:30 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 19 16:49:35 2010 -0500"
      },
      "message": "nl80211: Allow association to change channels during reassociation\n\nnl80211_associate() was rejecting (re)association attempts with EBUSY\nin some cases where we are currently associated with an AP that uses\ndifferent channel from the destination AP. Fix this by passing the\ncurrent wdev to rdev_fixed_channel() in the same way that was already\ndone for join-IBSS and connect commands. This allows the fixedchan\ncheck to skipped for the current wdev and allows the reassociation to\nproceed.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "34a6eddbabd704b3c7dae9362234552267573be2",
      "tree": "661184452aa597e4f1034561b3ec9b267ad2e196",
      "parents": [
        "80a112ffe8dbada25f3780ecc4beebf23451d755"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "j@w1.fi",
        "time": "Wed Jan 06 16:19:24 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jan 12 13:51:28 2010 -0500"
      },
      "message": "cfg80211: Store IEs from both Beacon and Probe Response frames\n\nStore information elements from Beacon and Probe Response frames in\nseparate buffers to allow both sets to be made available through\nnl80211. This allows user space applications to get access to IEs from\nBeacon frames even if we have received Probe Response frames from the\nBSS. Previously, the IEs from Probe Response frames would have\noverridden the IEs from Beacon frames.\n\nThis feature is of somewhat limited use since most protocols include\nthe same (or extended) information in Probe Response frames. However,\nthere are couple of exceptions where the IEs from Beacon frames could\nbe of some use: TIM IE is only included in Beacon frames (and it would\nbe needed to figure out the DTIM period used in the BSS) and at least\nsome implementations of Wireless Provisioning Services seem to include\nthe full IE only in Beacon frames).\n\nThe new BSS attribute for scan results is added to allow both the IE\nsets to be delivered. This is done in a way that maintains the\npreviously used behavior for applications that are not aware of the\nnew NL80211_BSS_BEACON_IES attribute.\n\nSigned-off-by: Jouni Malinen \u003cj@w1.fi\u003e\nAcked-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ],
  "next": "13ae75b103e07304a34ab40c9136e9f53e06475c"
}
