)]}'
{
  "log": [
    {
      "commit": "a0d0d1685f9763ab26a394df3ab84026b39a06a7",
      "tree": "4165dc6fd3266977ab4b3fa3b379c47597f97d88",
      "parents": [
        "31a67102f4762df5544bc2dfb34a931233d2a5b2",
        "05f8f25276ea8c7d41b3649890d6eaf179e67a81"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 22 15:18:06 2012 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue May 22 15:18:06 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless-next\n"
    },
    {
      "commit": "2615f3759b7b7d47a2fa894bc9f45286bdf122d7",
      "tree": "2533e28f347651fc8f551e3747110e4d3c40b7b8",
      "parents": [
        "4472037be86a9d7d1cab37e0c4cb310997a140ae"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Tue May 08 21:36:20 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 16 12:46:33 2012 -0400"
      },
      "message": "cfg80211: add warning when calculating MCS rates \u003e\u003d 32\n\ncfg80211_calculate_bitrate() doesn\u0027t work for MCS\nrates 32 or higher, and it has always returned 0\nin that case. Warn if it ever really happens.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4c764729aba365796c09d988f53043891f822acb",
      "tree": "71794f62b9c66c9b1edeaa355ff8890a60574ae0",
      "parents": [
        "ac422d3cc25351819ec80b7e2852fd2c600c317c"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue May 08 18:56:56 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 09 20:49:19 2012 -0400"
      },
      "message": "wireless: Convert compare_ether_addr to ether_addr_equal by hand\n\nspatch/coccinelle isn\u0027t perfect.  It doesn\u0027t understand\n__aligned(x) and doesn\u0027t convert functions it can\u0027t parse.\n\nConvert the remaining compare_ether_addr uses.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "ac422d3cc25351819ec80b7e2852fd2c600c317c",
      "tree": "a6ca456ad41256bf2cee71a189c1c05027f16532",
      "parents": [
        "8561cf99785faf73cccb9f417170d8b5844bf496"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue May 08 18:56:55 2012 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed May 09 20:49:19 2012 -0400"
      },
      "message": "wireless: Convert compare_ether_addr to ether_addr_equal\n\nUse the new bool function ether_addr_equal to add\nsome clarity and reduce the likelihood for misuse\nof compare_ether_addr for sorting.\n\nI removed a conversion from scan.c/cmp_bss_core\nthat appears to be a sorting function.\n\nDone via cocci script:\n\n$ cat compare_ether_addr.cocci\n@@\nexpression a,b;\n@@\n-\t!compare_ether_addr(a, b)\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tcompare_ether_addr(a, b)\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) \u003d\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!ether_addr_equal(a, b) !\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) \u003d\u003d 0\n+\t!ether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\tether_addr_equal(a, b) !\u003d 0\n+\tether_addr_equal(a, b)\n\n@@\nexpression a,b;\n@@\n-\t!!ether_addr_equal(a, b)\n+\tether_addr_equal(a, b)\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f24001941c99776f41bd3f09c07d91205c2ad9d4",
      "tree": "0ab31480ccdf343b61db045e195d096068ef7c73",
      "parents": [
        "a108d5f35adc5c5d5cdc882dc0bb920565551bff",
        "4d634ca35a8b38530b134ae92bc9e3cc9c23c030"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:14:36 2012 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Apr 23 23:15:17 2012 -0400"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net\n\nFix merge between commit 3adadc08cc1e (\"net ax25: Reorder ax25_exit to\nremove races\") and commit 0ca7a4c87d27 (\"net ax25: Simplify and\ncleanup the ax25 sysctl handling\")\n\nThe former moved around the sysctl register/unregister calls, the\nlater simply removed them.\n\nWith help from Stephen Rothwell.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8e8b41f9d8c8e63fc92f899ace8da91a490ac573",
      "tree": "154122d12331baa908766b87782cad69b4a7da7d",
      "parents": [
        "0d920987f900573f9f86b7310147ebd1646657c9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Mar 15 10:16:16 2012 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Apr 16 14:16:58 2012 -0400"
      },
      "message": "cfg80211: enforce lack of interface combinations\n\nMy grand plan to allow drivers to gradually move over\nto advertising virtual interface combinations and only\nenforce with drivers that do want it enforced doesn\u0027t\nseem to be working out, only Christian ever added the\nadvertising (to carl9170), nobody else did.\n\nBegin enforcing combinations in cfg80211 so that users\ncan rely on the information reported about a device.\n\nCc: \"Luis R. Rodriguez\" \u003cmcgrof@qca.qualcomm.com\u003e\nCc: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\nCc: Vasanthakumar Thiagarajan \u003cvthiagar@qca.qualcomm.com\u003e\nCc: Senthil Balasubramanian \u003csenthilb@qca.qualcomm.com\u003e\nCc: Kalle Valo \u003ckvalo@qca.qualcomm.com\u003e\nCc: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nCc: Nick Kossifidis \u003cmickflemm@gmail.com\u003e\nCc: Bob Copeland \u003cme@bobcopeland.com\u003e\nCc: Bing Zhao \u003cbzhao@marvell.com\u003e\nCc: Lennert Buytenhek \u003cbuytenh@wantstofly.org\u003e\nCc: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nCc: Gertjan van Wingerde \u003cgwingerde@gmail.com\u003e\nCc: Helmut Schaa \u003chelmut.schaa@googlemail.com\u003e\nCc: Luciano Coelho \u003ccoelho@ti.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e55a4046dab28c440c96890bdddcf02dc8981f2d",
      "tree": "e133ef763bc5fdaaec8667cab635daba9f38d3db",
      "parents": [
        "badc4f07622f0f7093a201638f45e85765f1b5e4"
      ],
      "author": {
        "name": "Lukasz Kucharczyk",
        "email": "lukasz.kucharczyk@tieto.com",
        "time": "Wed Apr 11 14:55:10 2012 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Apr 13 14:05:35 2012 -0400"
      },
      "message": "cfg80211: fix interface combinations check.\n\nSigned-off-by: Lukasz Kucharczyk \u003clukasz.kucharczyk@tieto.com\u003e\nCc: stable@vger.kernel.org\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8097e1494459a4f9cdbaba7440334d9bd11a39f0",
      "tree": "c04b23569e81b35711a56f55ae60ad8ebf6e0563",
      "parents": [
        "2e7eb117586198386e5a06d0bc4279a9d7cbaeb6"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Mon Mar 05 15:31:47 2012 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 06 15:16:17 2012 -0500"
      },
      "message": "cfg80211: expose cfg80211_calculate_bitrate()\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nReviewed-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "b156579b1404871d97d2713c1f93c9526618e3ba",
      "tree": "c2665f99df8088555b3126c0d2f51c8fa02e303f",
      "parents": [
        "288e0713f469c03dbc412153b5341d6dfc2c9907"
      ],
      "author": {
        "name": "Dave Täht",
        "email": "dave.taht@bufferbloat.net",
        "time": "Thu Dec 22 12:55:08 2011 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jan 04 14:30:43 2012 -0500"
      },
      "message": "wireless: Treat IPv6 diffserv the same as IPv4 for 802.11e\n\nWireless will select a different hardware queue based on the\ntop 3 bits of the diffserv field, for ipv4. Extend that queue\nselection mechanism to ipv6, and make the calls orthogonal.\n\nSigned-off-by: Dave TÃ¤ht \u003cdave.taht@bufferbloat.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "adbde344dc12514d68620afae8d34035e72544b1",
      "tree": "d3685186492aaef49a0373f82a1087c15b5cea86",
      "parents": [
        "fb03c5eb8c0bbf4561cb5aa72e0a9546e9574661"
      ],
      "author": {
        "name": "Vasanthakumar Thiagarajan",
        "email": "vthiagar@qca.qualcomm.com",
        "time": "Thu Dec 08 14:28:47 2011 +0530"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 13 15:30:28 2011 -0500"
      },
      "message": "cfg80211: Fix race in bss timeout\n\nIt is quite possible to run into a race in bss timeout where\nthe drivers see the bss entry just before notifying cfg80211\nof a roaming event but it got timed out by the time rdev-\u003eevent_work\ngot scehduled from cfg80211_wq. This would result in the following\nWARN-ON() along with the failure to notify the user space of\nthe roaming. The other situation which is happening with ath6kl\nthat runs into issue is when the driver reports roam to same AP\nevent where the AP bss entry already got expired. To fix this,\nmove cfg80211_get_bss() from __cfg80211_roamed() to cfg80211_roamed().\n\n[158645.538384] WARNING: at net/wireless/sme.c:586\n__cfg80211_roamed+0xc2/0x1b1()\n[158645.538810] Call Trace:\n[158645.538838]  [\u003cc1033527\u003e] warn_slowpath_common+0x65/0x7a\n[158645.538917]  [\u003cc14cfacf\u003e] ? __cfg80211_roamed+0xc2/0x1b1\n[158645.538946]  [\u003cc103354b\u003e] warn_slowpath_null+0xf/0x13\n[158645.539055]  [\u003cc14cfacf\u003e] __cfg80211_roamed+0xc2/0x1b1\n[158645.539086]  [\u003cc14beb5b\u003e] cfg80211_process_rdev_events+0x153/0x1cc\n[158645.539166]  [\u003cc14bd57b\u003e] cfg80211_event_work+0x26/0x36\n[158645.539195]  [\u003cc10482ae\u003e] process_one_work+0x219/0x38b\n[158645.539273]  [\u003cc14bd555\u003e] ? wiphy_new+0x419/0x419\n[158645.539301]  [\u003cc10486cb\u003e] worker_thread+0xf6/0x1bf\n[158645.539379]  [\u003cc10485d5\u003e] ? rescuer_thread+0x1b5/0x1b5\n[158645.539407]  [\u003cc104b3e2\u003e] kthread+0x62/0x67\n[158645.539484]  [\u003cc104b380\u003e] ? __init_kthread_worker+0x42/0x42\n[158645.539514]  [\u003cc151309a\u003e] kernel_thread_helper+0x6/0xd\n\nReported-by: Kalle Valo \u003ckvalo@qca.qualcomm.com\u003e\nSigned-off-by: Vasanthakumar Thiagarajan \u003cvthiagar@qca.qualcomm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "515db09338704a6ad7d27b5f1e33820d3052edd2",
      "tree": "74f915531710303397d34069b325c2be7a5ac93c",
      "parents": [
        "30be52e44fd4276d768efffb55d424fb682e6505",
        "cfcfc9eca2bcbd26a8e206baeb005b055dbf8e37"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 22 14:05:46 2011 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Nov 22 14:05:46 2011 -0500"
      },
      "message": "Merge branch \u0027master\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux\n\nConflicts:\n\tdrivers/net/wireless/iwlegacy/iwl-debugfs.c\n\tdrivers/net/wireless/iwlegacy/iwl-rx.c\n\tdrivers/net/wireless/iwlegacy/iwl-scan.c\n\tdrivers/net/wireless/iwlegacy/iwl-tx.c\n\tinclude/net/bluetooth/bluetooth.h\n"
    },
    {
      "commit": "11a2a357a9d8e058db032883ffd535bf4ad6a899",
      "tree": "daf8b7805b5ecadee495134c60ce5289101f8ec5",
      "parents": [
        "fd67a728a97c171e54319833adaf8d2641954781"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Nov 21 11:09:22 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:22:10 2011 -0500"
      },
      "message": "cfg80211: work around a sparse issue\n\nsparse reports:\nnet/wireless/util.c:499:30: error: cannot size expression\nnet/wireless/util.c:503:30: error: cannot size expression\n\nThis is evidently due to the EXPORT_SYMBOL() of the\nbridge_tunnel_header and rfc1042 header variables.\nMove them to the end of the file to work around the\nsparse issue. The error itself from sparse can be\nignored safely, but since sparse stops parsing at\nerrors, other issues after this would go undetected.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "dd76986b0e398978ca32dd60c1b7dc50ab4e9ae1",
      "tree": "fea61a3dcb75a0c90e772b2beeaf4edb49ae7b50",
      "parents": [
        "80b998993d97d8a13589f8462e62a60298c72cf2"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Nov 18 16:54:50 2011 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 21 16:20:49 2011 -0500"
      },
      "message": "cfg80211/mac80211: Revert \"move information element parsing logic to cfg80211\"\n\nNo other driver ever ended up using this, and\nthe commit forgot to move the prototype so no\ndriver could have used it. Revert it, if any\ndriver shows up and needs it it can be moved\nagain, but until then it\u0027s more efficient to\nhave it in mac80211 where the only user is.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bc3b2d7fb9b014d75ebb79ba371a763dbab5e8cf",
      "tree": "b0fd4e724bdb1c0a1783616614ae5a9dec1cfa5c",
      "parents": [
        "d9b9384215e17c68d7b6bd05d6fa409e5d4140d7"
      ],
      "author": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Fri Jul 15 11:47:34 2011 -0400"
      },
      "committer": {
        "name": "Paul Gortmaker",
        "email": "paul.gortmaker@windriver.com",
        "time": "Mon Oct 31 19:30:30 2011 -0400"
      },
      "message": "net: Add export.h for EXPORT_SYMBOL/THIS_MODULE to non-modules\n\nThese files are non modular, but need to export symbols using\nthe macros now living in export.h -- call out the include so\nthat things won\u0027t break when we remove the implicit presence\nof module.h from everywhere.\n\nSigned-off-by: Paul Gortmaker \u003cpaul.gortmaker@windriver.com\u003e\n"
    },
    {
      "commit": "941c93cd039852b7ab02c74f4698c99d82bd6cfe",
      "tree": "8f527535dcb145877ac8cb68f43723b05d574e6e",
      "parents": [
        "07ba55d7f1d0da174c9bc545c713b44cee760197"
      ],
      "author": {
        "name": "Arik Nemtsov",
        "email": "arik@wizery.com",
        "time": "Wed Sep 28 14:12:54 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Sep 30 15:57:09 2011 -0400"
      },
      "message": "mac80211: data path modification for TDLS peers\n\nMark the STA entries of enabled TDLS peers with a new \"peer authorized\"\nflag.\n\nDuring link setup, allow special TDLS setup frames through the AP, but\notherwise drop all packets destined to the peer. This is required by the\nTDLS (802.11z) specification in order to prevent reordering of MSDUs\nbetween the AP and direct paths.\n\nWhen setup completes and the peer is authorized, send data directly,\nbypassing the AP.\n\nIn the Rx path, allow data to be received directly from TDLS peers.\n\nSigned-off-by: Arik Nemtsov \u003carik@wizery.com\u003e\nCc: Kalyan C Gaddam \u003cchakkal@iit.edu\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "38ba3c57af1c737966fb58bcbeecdc71f5f4fa90",
      "tree": "5c2539d3c2cf8e2d0728917ecc4227efcb5774b9",
      "parents": [
        "6d30240e3d68f1da7303801f840132d0821f1767"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni@qca.qualcomm.com",
        "time": "Wed Sep 21 18:14:56 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 27 14:29:54 2011 -0400"
      },
      "message": "cfg80211: Validate cipher suite against supported ciphers\n\nInstead of using a hardcoded list of cipher suites in nl80211.c, use a\nshared function in util.c to verify that the driver advertises support\nfor the specified cipher. This provides more accurate validation of the\nvalues and allows vendor-specific cipher suites to be added in drivers.\n\nSigned-off-by: Jouni Malinen \u003cjouni@qca.qualcomm.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "24616152b1d184864370c5ea21f8fdbd5a90d58d",
      "tree": "58f21a71a8d02c25d56f96a4b47a251aaeae796a",
      "parents": [
        "246c0812049f92109ab9771e34480a2ce816f005"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Mon Aug 29 14:17:41 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Sep 13 15:45:02 2011 -0400"
      },
      "message": "wireless: Remove unnecessary OOM logging messages\n\nRemoving unnecessary messages saves code and text.\n\nSite specific OOM messages are duplications of a generic MM\nout of memory message and aren\u0027t really useful, so just\ndelete them.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8db098507c5cbe499061d0f6aea426a36e7c72d7",
      "tree": "bf7062fff64f56ae376cb16ffa5c3cd85c09296b",
      "parents": [
        "54ef656b05103f700ff8fc2aaf0382cfd0e54fe4"
      ],
      "author": {
        "name": "Thomas Pedersen",
        "email": "thomas@cozybit.com",
        "time": "Fri Aug 12 20:01:00 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Aug 22 14:46:00 2011 -0400"
      },
      "message": "mac80211: update mesh peering frame format\n\nThis patch updates the mesh peering frames to the format specified in\nthe recently ratified 802.11s standard. Several changes took place to\nmake this happen:\n\n\t- Change RX path to handle new self-protected frames\n\t- Add new Peering management IE\n\t- Remove old Peer Link IE\n\t- Remove old plink_action field in ieee80211_mgmt header\n\nThese changes by themselves would either break peering, or work by\ncoincidence, so squash them all into this patch.\n\nSigned-off-by: Thomas Pedersen \u003cthomas@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0879fa44b54101c9955123582018cb511047a2b6",
      "tree": "0a9c1f5fc10a3b320d0db793598822a43b2dc719",
      "parents": [
        "f3d4505de539f754b78d5c30e5d2cb41a0ed0117"
      ],
      "author": {
        "name": "Yogesh Ashok Powar",
        "email": "yogeshp@marvell.com",
        "time": "Tue Aug 09 18:02:26 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 12 13:45:03 2011 -0400"
      },
      "message": "cfg80211/mac80211: move information element parsing logic to cfg80211\n\nMoving the parsing logic for retrieving the information elements\nstored in management frames, e.g. beacons or probe responses,\nand making it available to other cfg80211 drivers.\n\nSigned-off-by: Yogesh Ashok Powar \u003cyogeshp@marvell.com\u003e\nSigned-off-by: Amitkumar Karwar \u003cakarwar@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a401d2bb363d942245acdd81c5b5a754011696ee",
      "tree": "1f05cf5d53b72576d101572aeca176320fc361df",
      "parents": [
        "70126f6105f86366fd97644937ef2180b906b7c8"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Wed Jul 20 00:52:16 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 20 15:04:38 2011 -0400"
      },
      "message": "cfg80211: fix scan crash on single-band cards\n\ncommit 58389c69150e6032504dfcd3edca6b1975c8b5bc\nAuthor: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nDate:   Mon Jul 18 18:08:35 2011 +0200\n\n     cfg80211: allow userspace to control supported rates in scan\n\nmade single-band cards crash since it would always\naccess all wiphy-\u003ebands[]. Fix this and reject any\nattempts in the new helper ieee80211_get_ratemask()\nto do the same, rejecting rates configuration for\nunsupported bands.\n\nReported-by: Pavel Roskin \u003cproski@gnu.org\u003e\nTested-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "34850ab25d74ab4eead62c3b4a9e8036a25cc669",
      "tree": "c1aa56f2d94851804969b71523ade13bb9db693c",
      "parents": [
        "0b5dd734d3545a9833c0bceeed5088ad9a1ca5e3"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Mon Jul 18 18:08:35 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Jul 19 16:49:58 2011 -0400"
      },
      "message": "cfg80211: allow userspace to control supported rates in scan\n\nSome P2P scans are not allowed to advertise\n11b rates, but that is a rather special case\nso instead of having that, allow userspace\nto request the rate sets (per band) that are\nadvertised in scan probe request frames.\n\nSince it\u0027s needed in two places now, factor\nout some common code parsing a rate array.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ed9d01026f156db2d638cbb045231c7a8fde877d",
      "tree": "0c99c25b87973112db1b8464e5ad429cd943786f",
      "parents": [
        "79d2b1570bcc31b846ccb2114a34e98ca87bf1d9"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Mon May 16 19:40:15 2011 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu May 19 10:37:18 2011 -0400"
      },
      "message": "cfg80211: Use consistent BSS matching between scan and sme\n\ncfg80211 scan code adds separate BSS entries if the same BSS shows up\non multiple channels. However, sme implementation does not use the\nfrequency when fetching the BSS entry. Fix this by adding channel\ninformation to cfg80211_roamed() and include it in cfg80211_get_bss()\ncalls.\n\nPlease note that drivers using cfg80211_roamed() need to be modified to\nfully implement this fix. This commit includes only minimal changes to\navoid compilation issues; it maintains the old (broken) behavior for\nmost drivers. ath6kl was the only one that I could test, so I updated\nit to provide the operating frequency in the roamed event.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8b3becadc82de3b87a5c196239db3fef6caa9c82",
      "tree": "d71a3c7e29d30c92c4b677257c289ca63b4e65f3",
      "parents": [
        "57cf8043a64b56a10b9f194572548a3dfb62e596"
      ],
      "author": {
        "name": "Yogesh Ashok Powar",
        "email": "yogeshp@marvell.com",
        "time": "Fri May 13 11:22:31 2011 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon May 16 14:10:50 2011 -0400"
      },
      "message": "cfg80211: make stripping of 802.11 header optional from AMSDU\n\nCurrently the devices that have already stripped IEEE 802.11\nheader from the AMSDU SKB can not use ieee80211_amsdu_to_8023s\nroutine. This patch enhances ieee80211_amsdu_to_8023s() API by\nchanging mandatory removing of IEEE 802.11 header from AMSDU\nto optional.\n\nSigned-off-by: Yogesh Ashok Powar \u003cyogeshp@marvell.com\u003e\nSigned-off-by: Bing Zhao \u003cbzhao@marvell.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": "45cbad6a1299842b5ae9a8a9c09630af063692f8",
      "tree": "153e05300a1a6cee014441e0d4733165a1f60f37",
      "parents": [
        "53e3b6e29eeda568fbe6c1e32d35cb56eea94415"
      ],
      "author": {
        "name": "Juuso Oikarinen",
        "email": "juuso.oikarinen@nokia.com",
        "time": "Tue Jan 25 12:21:22 2011 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 28 15:44:27 2011 -0500"
      },
      "message": "cfg80211: Allow non-zero indexes for device specific pair-wise ciphers\n\nSome vendor specific cipher suites require non-zero key indexes for pairwise\nkeys, but as of currently, the cfg80211 does not allow it.\n\nAs validating they cipher parameters for vendor specific cipher suites is the\njob of the driver or hardware/firmware, change the cfg80211 to allow also\nnon-zero pairwise key indexes for vendor specific ciphers.\n\nSigned-off-by: Juuso Oikarinen \u003cjuuso.oikarinen@nokia.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "59eb21a6504731fc16db4cf9463065dd61093e08",
      "tree": "4a3732d451c85a5949c6d6294db51a56530677d8",
      "parents": [
        "60f2d1d506195803fa6e1dcf3972637b740fdd60"
      ],
      "author": {
        "name": "Bruno Randolf",
        "email": "br1@einfach.org",
        "time": "Mon Jan 17 13:37:28 2011 +0900"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 21 15:34:17 2011 -0500"
      },
      "message": "cfg80211: Extend channel to frequency mapping for 802.11j\n\nExtend channel to frequency mapping for 802.11j Japan 4.9GHz band, according to\nIEEE802.11 section 17.3.8.3.2 and Annex J. Because there are now overlapping\nchannel numbers in the 2GHz and 5GHz band we can\u0027t map from channel to\nfrequency without knowing the band. This is no problem as in most contexts we\nknow the band. In places where we don\u0027t know the band (and WEXT compatibility)\nwe assume the 2GHz band for channels below 14.\n\nThis patch does not implement all channel to frequency mappings defined in\n802.11, it\u0027s just an extension for 802.11j 20MHz channels. 5MHz and 10MHz\nchannels as well as 802.11y channels have been omitted.\n\nThe following drivers have been updated to reflect the API changes:\niwl-3945, iwl-agn, iwmc3200wifi, libertas, mwl8k, rt2x00, wl1251, wl12xx.\nThe drivers have been compile-tested only.\n\nSigned-off-by: Bruno Randolf \u003cbr1@einfach.org\u003e\nSigned-off-by: Brian Prodoehl \u003cbprodoehl@gmail.com\u003e\nAcked-by: Luciano Coelho \u003ccoelho@ti.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": "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": "e9c0268f02f8970149158a9b7ea1e5c1c45c819d",
      "tree": "1c73aeb5aa981379545a0b1edbd13dc6cbea6fee",
      "parents": [
        "d7a066c92394f3e777351de0c903beeb8a08af76"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Nov 16 19:56:49 2010 -0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 24 16:19:33 2010 -0500"
      },
      "message": "net/wireless: Use pr_\u003clevel\u003e and netdev_\u003clevel\u003e\n\nNo change in output for pr_\u003clevel\u003e prefixes.\nnetdev_\u003clevel\u003e output is different, arguably improved.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.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": "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": "7d64b7cc1fc33bab24567903a93f699d11649c0b",
      "tree": "b87c97377a413b1c8d562d135903ce128e7b4a65",
      "parents": [
        "b49d09c5bf9a3261ae711ac3bb91e22c172db428"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Fri Aug 27 14:26:51 2010 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 27 13:27:07 2010 -0400"
      },
      "message": "cfg80211: allow vendor specific cipher suites\n\ncfg80211 currently rejects all cipher suites it\ndoesn\u0027t know about for key length checking\npurposes. This can lead to inconsistencies when\na driver advertises an algorithm that cfg80211\ndoesn\u0027t know about. Remove this rejection so\ndrivers can specify any algorithm they like.\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": "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": "633adf1ad1c92c02bd3f10bbd73737a969179378",
      "tree": "3f23d54719a1742d9326d61b6820147185cdb60c",
      "parents": [
        "b68b3c4d92ff2440414137763477648e6db6c96f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes.berg@intel.com",
        "time": "Thu Aug 12 14:49:58 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Aug 24 16:27:54 2010 -0400"
      },
      "message": "cfg80211: mark ieee80211_hdrlen const\n\nThis function analyses only its single, value-passed\nargument, and has no side effects. Thus it can be\nconst, which makes mac80211 smaller, for example:\n\n   text\t   data\t    bss\t    dec\t    hex\tfilename\n 362518\t  16720\t    884\t 380122\t  5ccda\tmac80211.ko (before)\n 362358\t  16720\t    884\t 379962\t  5cc3a\tmac80211.ko (after)\n\na 160 byte saving in text size, and an optimisation\nbecause the function won\u0027t be called as often.\n\nSigned-off-by: Johannes Berg \u003cjohannes.berg@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\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": "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": "e3cf8b3f7b9eefbe1d39b160726d6e5c2cbb4c5d",
      "tree": "c59a6fcb8d0bcd88d848785a3dbe3978d1568274",
      "parents": [
        "e58b1253f1e850b4469964d7b92cf230196223c0"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Mar 29 17:35:07 2010 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Mar 31 14:39:34 2010 -0400"
      },
      "message": "mac80211: support paged rx SKBs\n\nMac80211 drivers can now pass paged SKBs to mac80211 via\nieee80211_rx{_irqsafe}. The implementation currently use\nskb_linearize() in a few places i.e. management frame\nhandling, software decryption, defragmentation and A-MSDU\nprocess. We will optimize them one by one later.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nCc: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\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": "d0dd2de0d055f0ffb1e2ecdc21380de9d12a85e2",
      "tree": "cb3d3e77e62c22032f0fac4c58e8f304f08f5061",
      "parents": [
        "ef15aac6073b27fd4f70007784d2d52ed394bf43"
      ],
      "author": {
        "name": "Andriy Tkachuk",
        "email": "andrit@ukr.net",
        "time": "Wed Jan 20 13:55:06 2010 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jan 22 16:11:27 2010 -0500"
      },
      "message": "mac80211: Account HT Control field in Data frame hdrlen according to 802.11n-2009\n\nieee80211_hdrlen() should account account new HT Control field in 802.11\ndata frame header introduced by IEEE 802.11n standard.\n\nAccording to 802.11n-2009 HT Control field is present in data frames\nwhen both of following are met:\n\n   1. It is QoS data frame.\n   2. Order bit is set in Frame Control field.\n\nThe change might be totally compatible with legacy non-11n aware frames,\nbecause 802.11-2007 standard states that \"all QoS STAs set this subfield\nto 0\".\n\nSigned-off-by: Andriy V. Tkachuk \u003candrit@ukr.net\u003e\nAcked-by : Benoit Papillault \u003cbenoit.papillault@free.fr\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "eaf85ca7fecb218fc41ff57c1642ca73b097aabb",
      "tree": "ad7965715f0cd67fe8946980ae2d1e9f3ea231a1",
      "parents": [
        "ca99861d5421c91f5a8fd3a77acb4b7be14f119d"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Tue Dec 01 10:18:37 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Dec 22 13:31:15 2009 -0500"
      },
      "message": "wireless: add ieee80211_amsdu_to_8023s\n\nMove the A-MSDU handling code from mac80211 to cfg80211 so that more\ndrivers can use it. The new created function ieee80211_amsdu_to_8023s\nconverts an A-MSDU frame to a list of 802.3 frames.\n\nCc: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "254416aae70ab2e6b57fd79782c8a67196234d02",
      "tree": "e28d54d1514634b591b54296b35bb9029e7b5a9c",
      "parents": [
        "a252e749f1ae17e43ccc5824f7b1b5854417c98b"
      ],
      "author": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Dec 09 16:43:52 2009 -0500"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Dec 21 11:27:31 2009 -0500"
      },
      "message": "wireless: report reasonable bitrate for MCS rates through wext\n\nPreviously, cfg80211 had reported \"0\" for MCS (i.e. 802.11n) bitrates\nthrough the wireless extensions interface.  However, nl80211 was\nconverting MCS rates into a reasonable bitrate number.  This patch moves\nthe nl80211 code to cfg80211 where it is now shared between both the\nnl80211 interface and the wireless extensions interface.\n\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "ad4bb6f8883a13bb0f65b194dae36c62a02ac779",
      "tree": "b395936203ac891b9a537c26b4602f727c4387d0",
      "parents": [
        "9bc383de37090ba7ca3ff32a12c9d809dc5867f0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Nov 19 00:56:30 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 19 11:08:54 2009 -0500"
      },
      "message": "cfg80211: disallow bridging managed/adhoc interfaces\n\nA number of people have tried to add a wireless interface\n(in managed mode) to a bridge and then complained that it\ndoesn\u0027t work. It cannot work, however, because in 802.11\nnetworks all packets need to be acknowledged and as such\nneed to be sent to the right address. Promiscuous doesn\u0027t\nhelp here. The wireless address format used for these\nlinks has only space for three addresses, the\n * transmitter, which must be equal to the sender (origin)\n * receiver (on the wireless medium), which is the AP in\n   the case of managed mode\n * the recipient (destination), which is on the APs local\n   network segment\n\nIn an IBSS, it is similar, but the receiver and recipient\nmust match and the third address is used as the BSSID.\n\nTo avoid such mistakes in the future, disallow adding a\nwireless interface to a bridge.\n\nFelix has recently added a four-address mode to the AP\nand client side that can be used (after negotiating that\nit is possible, which must happen out-of-band by setting\nup both sides) for bridging, so allow that case.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nAcked-by: Stephen Hemminger \u003cshemminger@vyatta.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9bc383de37090ba7ca3ff32a12c9d809dc5867f0",
      "tree": "2b502b918f585427b45357e5a9a781ea9f06c263",
      "parents": [
        "5be83de54c16944dea9c16c6a5a53c1fa75ed304"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Nov 19 11:55:19 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Nov 19 11:08:53 2009 -0500"
      },
      "message": "cfg80211: introduce capability for 4addr mode\n\nIt\u0027s very likely that not many devices will support\nfour-address mode in station or AP mode so introduce\ncapability bits for both modes, set them in mac80211\nand check them when userspace tries to use the mode.\nAlso, keep track of 4addr in cfg80211 (wireless_dev)\nand not in mac80211 any more. mac80211 can also be\nimproved for the VLAN case by not looking at the\n4addr flag but maintaining the station pointer for\nit correctly. However, keep track of use_4addr for\nstation mode in mac80211 to avoid all the derefs.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f14543ee4d0681df1377b976cba704557ba220d3",
      "tree": "f148485869f6638030207c069742c1918647be6a",
      "parents": [
        "8b787643ca0a5130c647109d77fe512f89cfa611"
      ],
      "author": {
        "name": "Felix Fietkau",
        "email": "nbd@openwrt.org",
        "time": "Tue Nov 10 20:10:05 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Nov 11 17:02:10 2009 -0500"
      },
      "message": "mac80211: implement support for 4-address frames for AP and client mode\n\nIn some situations it might be useful to run a network with an\nAccess Point and multiple clients, but with each client bridged\nto a network behind it. For this to work, both the client and the\nAP need to transmit 4-address frames, containing both source and\ndestination MAC addresses.\nWith this patch, you can configure a client to communicate using\nonly 4-address frames for data traffic.\nOn the AP side you can enable 4-address frames for individual\nclients by isolating them in separate AP VLANs which are configured\nin 4-address mode.\nSuch an AP VLAN will be limited to one client only, and this client\nwill be used as the destination for all traffic on its interface,\nregardless of the destination MAC address in the packet headers.\nThe advantage of this mode compared to regular WDS mode is that it\u0027s\neasier to configure and does not require a static list of peer MAC\naddresses on any side.\n\nSigned-off-by: Felix Fietkau \u003cnbd@openwrt.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3d54d25515838543e56889aa7e48f40d00719368",
      "tree": "ac8e7ab50b5fa9e9be64885f86c99a0b6c71892c",
      "parents": [
        "f7969969f416e593bcc7dc24abf3f9fd6c27136d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 21 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 28 14:40:31 2009 -0400"
      },
      "message": "cfg80211: clean up properly on interface type change\n\nWhen the interface type changes while connected, and the\ndriver does not require the interface to be down for a\ntype change, it is currently possible to get very strange\nresults unless the driver takes special care, which it\nshouldn\u0027t have to.\n\nTo fix this, take care to disconnect/leave IBSS when\nchanging the interface type -- even if the driver may fail\nthe call. Also process all events that may be pending to\navoid running into a situation where an event is reported\nbut only processed after the type has already changed,\nwhich would lead to missing events and warnings.\n\nA side effect of this is that you will have disconnected\nor left the IBSS even if the mode change ultimately fails,\nbut since the intention was to change it and thus leave or\ndisconnect, this is not a problem.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "3c5772a5279de9eadfff7adb5ddea08106495fff",
      "tree": "297772521c18283ccfa19aacb090f396fa2b399e",
      "parents": [
        "a9e3091bf08ddea35f172549a8a21d5bd6ee6129"
      ],
      "author": {
        "name": "Javier Cardona",
        "email": "javier@cozybit.com",
        "time": "Mon Aug 10 12:15:48 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:14:00 2009 -0400"
      },
      "message": "mac80211: Use 3-address format for mesh broadcast frames.\n\nThe 11s task group recently changed the frame mesh multicast/broadcast frame\nformat to use 3-address.  This was done to avoid interactions with widely\ndeployed lazy-WDS access points.\n\nThis patch changes the format of group addressed frames, both mesh-originated\nand proxied, to use the data format defined in draft D2.08 and forward.  The\naddress fields used for group addressed frames is:\n\nIn 802.11 header\n ToDS:0  FromDS:1\n addr1: DA  (broadcast/multicast address)\n addr2: TA\n addr3: Mesh SA\n\nIn address extension header:\n addr4: SA  (only present if frame was proxied)\n\nNote that this change breaks backward compatibility with earlier mesh stack\nversions.\n\nSigned-off-by: Andrey Yurovsky \u003candrey@cozybit.com\u003e\nSigned-off-by: Javier Cardona \u003cjavier@cozybit.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "1e056665e878ce4f91dbfd594f4ebba49ea689c0",
      "tree": "596939e206e806cec40bd04f3d3d1c6dcc1822e1",
      "parents": [
        "971ad01169398170976951d3a9479a29d231c734"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Mon Jul 20 16:12:57 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:29 2009 -0400"
      },
      "message": "cfg80211: avoid setting default_key if add_key fails\n\nIn cfg80211_upload_connect_keys(), we call add_key, set_default_key\nand set_default_mgmt_key (if applicable) one by one. If one of these\noperations fails, we should stop calling the following functions.\nBecause if the key is not added successfully, we should not set it as\ndefault key anyway.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "517357c685ccc4b5783cc7dbdae8824ada19a97f",
      "tree": "1e3532ca39233dd59b106011788f68a21ffc88c4",
      "parents": [
        "0eb14647fc6b56f73efb28a72ca0c7cc03a653f9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 02 17:18:40 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:53 2009 -0400"
      },
      "message": "cfg80211: assimilate and export ieee80211_bss_get_ie\n\nThis function from mac80211 seems generally useful, and\nI will need it in cfg80211 soon.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "60fd2b67014440091770ac5738301c7fa4c4159c",
      "tree": "5cbc58ee6993cb1153ada3db1aed40cb1c941fef",
      "parents": [
        "e03e5ffd8d3327d23d76be5d63cfbbb537b1af59"
      ],
      "author": {
        "name": "Luis R. Rodriguez",
        "email": "lrodriguez@atheros.com",
        "time": "Tue Jun 02 16:31:10 2009 -0400"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 03 14:06:15 2009 -0400"
      },
      "message": "cfg80211: make ieee80211_get_mesh_hdrlen() static\n\nFixes spares warning:\nnet/wireless/util.c:261:5: warning:\nsymbol \u0027ieee80211_get_mesh_hdrlen\u0027 was not declared. Should it be static?\n\nSigned-off-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8fc0fee09245fe740d81aded36f4af6db1054015",
      "tree": "f2093f0edbef526bd54bb1d5f8913f2dc6a7a4c8",
      "parents": [
        "362a415dce2130b0e4cebfc8f8fbd8128baff308"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun May 24 16:57:19 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jun 03 14:05:10 2009 -0400"
      },
      "message": "cfg80211: use key size constants\n\nInstead of hardcoding the key length for validation, use the\nconstants Zhu Yi recently added and add one for AES_CMAC too.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "e31a16d6f64ef0e324c6f54d5112703c3f13a9c4",
      "tree": "4ed30d0ebd1d948aaa14bcd4fb52f29d9bb2e7a8",
      "parents": [
        "a971be223f243311a8014ddfc721f68e3ef2da9c"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Thu May 21 21:47:03 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri May 22 14:06:02 2009 -0400"
      },
      "message": "wireless: move some utility functions from mac80211 to cfg80211\n\nThe patch moves some utility functions from mac80211 to cfg80211.\nBecause these functions are doing generic 802.11 operations so they\nare not mac80211 specific. The moving allows some fullmac drivers\nto be also benefit from these utility functions.\n\nSigned-off-by: Zhu Yi \u003cyi.zhu@intel.com\u003e\nSigned-off-by: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "9f26a952210e44691f784b77bf1f83a500d63f58",
      "tree": "a11a5ab475cc8cfa61362e57b6b6c4e018d21996",
      "parents": [
        "cc65965cbb24d2ca2bb70f26cac9d7243349e7e3"
      ],
      "author": {
        "name": "Jouni Malinen",
        "email": "jouni.malinen@atheros.com",
        "time": "Fri May 15 12:38:32 2009 +0300"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 20 14:46:25 2009 -0400"
      },
      "message": "nl80211: Validate NL80211_ATTR_KEY_SEQ length\n\nValidate RSC (NL80211_ATTR_KEY_SEQ) length in nl80211/cfg80211 instead\nof having to do this in all the drivers.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "08645126dd24872c2e27014f93968f7312e29176",
      "tree": "2011cb3cb2f70d35278ef3b39ea696a058fb7b29",
      "parents": [
        "7be69c0b9aa93ef655db4d46e5654996489d62f5"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon May 11 13:54:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed May 13 15:44:32 2009 -0400"
      },
      "message": "cfg80211: implement wext key handling\n\nMove key handling wireless extension ioctls from mac80211 to cfg80211\nso that all drivers that implement the cfg80211 operations get wext\ncompatibility.\n\nNote that this drops the SIOCGIWENCODE ioctl support for getting\nIW_ENCODE_RESTRICTED/IW_ENCODE_OPEN. This means that iwconfig will\nno longer report \"Security mode:open\" or \"Security mode:restricted\"\nfor mac80211. However, what we displayed there (the authentication\nalgo used) was actually wrong -- linux/wireless.h states that this\nsetting is meant to differentiate between \"Refuse non-encoded packets\"\nand \"Accept non-encoded packets\".\n\n(Combined with \"cfg80211: fix a couple of bugs with key ioctls\". -- JWL)\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "d323655372590c533c275b1d798f9d1221efb5c6",
      "tree": "7eb0e7ecb88b09cead5a36b5aa93328b199e5c25",
      "parents": [
        "af8cdcd828ad751fae8e6cbfe94eef9f2f23b14b"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Apr 20 14:31:42 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Apr 22 16:57:17 2009 -0400"
      },
      "message": "cfg80211: clean up includes\n\nTrying to separate header files into net/wireless.h and\nnet/cfg80211.h has been a source of confusion. Remove\nnet/wireless.h (because there also is the linux/wireless.h)\nand subsume everything into net/cfg80211.h -- except the\ndefinitions for regulatory structures which get moved to\na new header net/regulatory.h.\n\nThe \"new\" net/cfg80211.h is now divided into sections.\n\nThere are no real changes in this patch but code shuffling\nand some very minor documentation fixes.\n\nI have also, to make things reflect reality, put in a\ncopyright line for Luis to net/regulatory.h since that\nis probably exclusively written by him but was formerly\nin a file that only had my copyright line.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "881d948c23442173a011f1adcfe4c95bf7f27515",
      "tree": "3d7e6a4bf23b960cf45a4d2c5734578168ce0424",
      "parents": [
        "369391db1aabd089cefaadaabb6d9fc82e78b0a7"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jan 21 15:13:48 2009 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Jan 29 16:01:09 2009 -0500"
      },
      "message": "wireless: restrict to 32 legacy rates\n\nSince the standards only define 12 legacy rates, 32 is certainly\na sane upper limit and we don\u0027t need to use u64 everywhere. Add\nsanity checking that no more than 32 rates are registered and\nchange the variables to u32 throughout.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "bd815252720e4b667d9946d050d003ec89bda099",
      "tree": "d7bb98f512c8b48031f9df01745820b7d6dfb3ac",
      "parents": [
        "743b97caf98036ec8ee4bfc6fc6f85ad94e04783"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Oct 29 20:00:45 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Nov 10 15:17:35 2008 -0500"
      },
      "message": "wireless: implement basic rate helper function\n\nThis adds a helper function that, given a bitmap of basic\nrates and a bitrate returns the response rate for this rate.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "6c507cd0400cb51dd2ee251c1b8756b9375a1128",
      "tree": "2b3d44a34e2c3d2ba1e9e0c557fb0730227f5bb4",
      "parents": [
        "7d5796118353cd45e9e301fdf3ff99fdec5390e9"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Mar 26 14:14:55 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Thu Mar 27 16:03:20 2008 -0400"
      },
      "message": "cfg80211: don\u0027t export ieee80211_get_channel\n\nThis patch makes ieee80211_get_channel a static inline defined in\ncfg80211\u0027s header file which simply calls __ieee80211_get_channel\nto avoid symbol clashes with the ieee80211 code.\n\nThe problem was pointed out by David Miller, thanks!\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nCc: David Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "906c730a2db950b7bce4ef17d65399acd791c360",
      "tree": "75df7353a1407fdcdca45e6f289ab0f25b2361af",
      "parents": [
        "857485c0c46ceee5c658c1761bba4d9a5ddf433f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sun Mar 16 18:34:33 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Tue Mar 25 16:41:55 2008 -0400"
      },
      "message": "wireless: add wiphy channel freq to channel struct lookup helper\n\nAdd ieee80211_get_channel() which gets you a channel struct for a\nspecific wiphy if that channel is present in that wiphy.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "406f2388cc1f6e6c176305bd325cef230ce1afdd",
      "tree": "39b877344339b668ac19cbf4896e59fe978ca1a8",
      "parents": [
        "2c28b36275b53cfe380566c1810b3f500f7f4b5b"
      ],
      "author": {
        "name": "Ivo van Doorn",
        "email": "ivdoorn@gmail.com",
        "time": "Sat Feb 02 23:53:10 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 29 15:19:33 2008 -0500"
      },
      "message": "wireless: Fix WARN_ON() with ieee802.11b\n\nWhen the driver registers a IEEE80211_BAND_2GHZ band,\nit can either be 802.11b or 802.11g. But when 802.11b rates\nare registered \"want\" will be 3 (since 4 rates are being registered,\nand each of those 4 rates will decrease \"want\").\nSince this is a correct situation, there is no need to trigger\na WARN_ON() for this.\n\nSigned-off-by: Ivo van Doorn \u003cIvDoorn@gmail.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "aac09fbf827b467995b00a1ea0213843a9e605b8",
      "tree": "04748962e5d88747183f0237fa73a99ee42f757c",
      "parents": [
        "b7c50de92e1b54fa4a9a2ee436b16ead3ee31767"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jan 30 17:36:10 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 29 15:19:33 2008 -0500"
      },
      "message": "wireless: fix ERP rate flags\n\nIn the rate API patch I accidentally reverted the test for\nERP rates, this fixes it. All rates except 1, 2, 5.5 and 11\nMBit are ERP rates, not those.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "8318d78a44d49ac1edf2bdec7299de3617c4232e",
      "tree": "d434634418edd7399737801615d247be06616fdd",
      "parents": [
        "10b6b80145cc93887dd8aab99bfffa375e9add31"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jan 24 19:38:38 2008 +0100"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Feb 29 15:19:32 2008 -0500"
      },
      "message": "cfg80211 API for channels/bitrates, mac80211 and driver conversion\n\nThis patch creates new cfg80211 wiphy API for channel and bitrate\nregistration and converts mac80211 and drivers to the new API. The\nold mac80211 API is completely ripped out. All drivers (except ath5k)\nare updated to the new API, in many cases I expect that optimisations\ncan be done.\n\nAlong with the regulatory code I\u0027ve also ripped out the\nIEEE80211_HW_DEFAULT_REG_DOMAIN_CONFIGURED flag, I believe it to be\nunnecessary if the hardware simply gives us whatever channels it wants\nto support and we then enable/disable them as required, which is pretty\nmuch required for travelling.\n\nAdditionally, the patch adds proper \"basic\" rate handling for STA\nmode interface, AP mode interface will have to have new API added\nto allow userspace to set the basic rate set, currently it\u0027ll be\nempty... However, the basic rate handling will need to be moved to\nthe BSS conf stuff.\n\nI do expect there to be bugs in this, especially wrt. transmit\npower handling where I\u0027m basically clueless about how it should work.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ]
}
