)]}'
{
  "log": [
    {
      "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"
    }
  ]
}
