)]}'
{
  "log": [
    {
      "commit": "4be3bd8ccc195297870b9ffca4ef18bcbc2f1822",
      "tree": "d8a1bed71b9b1dfb4f017494378c80a02eda6ea9",
      "parents": [
        "33de4f9d787e01646f715ac10c2699fb98fd479e"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 24 09:00:57 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:04 2009 -0400"
      },
      "message": "cfg80211: don\u0027t set privacy w/o key\n\nWhen wpa_supplicant is used to connect to open networks,\nit causes the wdev-\u003ewext.keys to point to key memory, but\nthat key memory is all empty. Only use privacy when there\nis a default key to be used.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Luis R. Rodriguez \u003clrodriguez@atheros.com\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "33de4f9d787e01646f715ac10c2699fb98fd479e",
      "tree": "8d9e9e42ac8143b7d7d26c46fd12aff091c10d74",
      "parents": [
        "d1f8297a96b0d70f17704296a6666468f2087ce6"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 17 08:35:54 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Mon Sep 28 16:55:04 2009 -0400"
      },
      "message": "cfg80211: wext: don\u0027t display BSSID unless associated\n\nCurrently, cfg80211\u0027s SIOCGIWAP implementation returns\nthe BSSID that the user set, even if the connection has\nsince been dropped due to other changes. It only should\nreturn the current BSSID when actually connected.\n\nAlso do a small code cleanup.\n\nReported-by: Thomas H. Guenther \u003cthomas.h.guenther@intel.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Thomas H. Guenther \u003cthomas.h.guenther@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "94f85853324e02c3a32bc3101f090dc9a3f512b4",
      "tree": "b01c799520a5cb39e1403824de70f7935a5cce28",
      "parents": [
        "018ae37292dd391494172495142b87e816a841c0"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Sep 17 17:15:31 2009 -0700"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Sep 23 11:35:53 2009 -0400"
      },
      "message": "cfg80211: don\u0027t overwrite privacy setting\n\nWhen cfg80211 is instructed to connect, it always\nuses the default WEP key for the privacy setting,\nwhich clearly is wrong when using wpa_supplicant.\nDon\u0027t overwrite the setting, and rely on it being\nfalse when wpa_supplicant is not running, instead\nset it to true when we have keys.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4b181144e6c1c25aaba9b9fc7cc70c95495ecb92",
      "tree": "93f85f1c99f097ec3c60f45b7b917c1b0dfbf7f9",
      "parents": [
        "e312c24cf8229f9b6e76dbfd5d99eefe21f4ac0a"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Sat Aug 08 11:03:58 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:51 2009 -0400"
      },
      "message": "cfg80211: fix locking for SIWFREQ\n\n\"cfg80211: validate channel settings across interfaces\"\ncontained a locking bug -- in the managed-mode SIWFREQ\ncall it would end up running into a lock recursion.\n\nThis fixes it by not checking that particular interface\nfor a channel that it needs to stay on, which is as it\nshould be as that\u0027s the interface we\u0027re setting the\nchannel for.\n\nReported-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nReported-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nTested-by: Reinette Chatre \u003creinette.chatre@intel.com\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f401a6f7ede753e56b84025e7d2db0d5ef560ce6",
      "tree": "12b077096234ba0f990c637665d11e0afa608b17",
      "parents": [
        "59bbb6f7574bc693ed8313b98eac641116c95b94"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 14:51:05 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:43 2009 -0400"
      },
      "message": "cfg80211: use reassociation when possible\n\nWith the move of everything related to the SME from\nmac80211 to cfg80211, we lost the ability to send\nreassociation frames. This adds them back, but only\nfor wireless extensions. With the userspace SME, it\nshall control assoc vs. reassoc (it already can do\nso with the nl80211 interface).\n\nI haven\u0027t touched the connect() implementation, so\nit is not possible to reassociate with the nl80211\nconnect primitive. I think that should be done with\nthe NL80211_CMD_ROAM command, but we\u0027ll have to see\nhow that can be handled in the future, especially\nwith fullmac chips.\n\nThis patch addresses only the immediate regression\nwe had in mac80211, which previously sent reassoc.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "59bbb6f7574bc693ed8313b98eac641116c95b94",
      "tree": "da24ed15c5e375782e79b3dab7022d2100a7987a",
      "parents": [
        "f26b32ed4bd5780855a79bb17fb1a431fa867dad"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Aug 07 17:22:35 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:13:42 2009 -0400"
      },
      "message": "cfg80211: validate channel settings across interfaces\n\nCurrently, there\u0027s a problem that affects regulatory\nenforcement and connection stability, in that it is\npossible to switch the channel while connected to a\nnetwork or joined to an IBSS.\n\nThe problem comes from the fact that we only validate\nthe channel against the current interface\u0027s type, not\nagainst any other interface. Thus, you have any type\nof interface up, additionally bring up a monitor mode\ninterface and switch the channel on the monitor. This\nwill obviously also switch the channel on the other\ninterface.\n\nThe problem now is that if you do that while sending\nbeacons for IBSS mode, you can switch to a disabled\nchannel or a channel that doesn\u0027t allow beaconing.\nCombined with a managed mode interface connected to\nan AP instead of an IBSS interface, you can easily\nbreak the connection that way.\n\nTo fix this, this patch validates any channel change\nwith all available interfaces, and disallows such\nchanges on secondary interfaces if another interface\nis connected to an AP or joined to an IBSS.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "a42dd7efd934888833c01199dbd21b242100ee92",
      "tree": "e16e5a19a0b0ad38261794a16f21b13c7ea1ad7a",
      "parents": [
        "bedaf80866f5d438b47d05e02fb1852065fe5d8e"
      ],
      "author": {
        "name": "Zhu Yi",
        "email": "yi.zhu@intel.com",
        "time": "Wed Aug 05 15:07:13 2009 +0800"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Aug 14 09:12:41 2009 -0400"
      },
      "message": "wireless: display wext SSID when connected by cfg80211\n\ncfg80211 displays correct link info when connected by wext. But if\nthe connection is setup by cfg80211, wext cannot display the SSID.\nThis patch fixed this issue.\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": "1f9298f96082692bdfe73af6fc2167f627f21647",
      "tree": "ac99b1e27f93e0f4296112af23f78ab7e3a36144",
      "parents": [
        "562e482265ac4d660d9f0114419591d62f44361d"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:52 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:18 2009 -0400"
      },
      "message": "cfg80211: combine IWESSID handlers\n\nSince we now have handlers IWESSID for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "562e482265ac4d660d9f0114419591d62f44361d",
      "tree": "fd57e0b515aef085a4eb1fc0d351811c82210db8",
      "parents": [
        "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:51 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:16 2009 -0400"
      },
      "message": "cfg80211: combine IWAP handlers\n\nSince we now have IWAP handlers for all modes, we can\ncombine them into one.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "0e82ffe3b90bcad72cfe80e4379946b8fb0691ca",
      "tree": "c6b73524d4db86ddcaa866d7ea81a9600b610413",
      "parents": [
        "a7bc376c858e0e724b8cb2db09b6874562d377ca"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Mon Jul 27 12:01:50 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Wed Jul 29 15:46:14 2009 -0400"
      },
      "message": "cfg80211: combine iwfreq implementations\n\nUntil now we implemented iwfreq for managed mode, we\nneeded to keep the implementations separate, but now\nthat we have all versions implemented we can combine\nthem and export just one handler.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "25e83c490be421019997146bdec8645f5bcabcd1",
      "tree": "61215246924f8aebcc0fd0a6fd7fc651dcc487bb",
      "parents": [
        "d4b1a6876f99ae1886cd254f649506af6692ac9f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 16 11:39:04 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:21 2009 -0400"
      },
      "message": "cfg80211: don\u0027t optimise wext calls too much\n\nIn the wext code I tried to not reconnect all the time\nwhen the user wasn\u0027t really sure what they were doing,\nlike setting the BSSID back to the same value it was.\nHowever, this optimisation should only be done while\nassociated so that setting the BSSID back to the same\nvalue that it was actually triggers a new association\nif not currently associated. To achieve, that, put the\nrelevant code into the !IDLE case instead.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nTested-by: Kalle Valo \u003ckalle.valo@iki.fi\u003e\nTested-by: Marcel Holtmann \u003cmarcel@holtmann.org\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "4697fe4f78df14d37cffa7e8d27cbb02a351c139",
      "tree": "4b43087351f81727011bd04a31f946f5b46b4029",
      "parents": [
        "908d4369a394e816767d566d9c3d15a5af8c1c55"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 18:35:49 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: fix wext setting SSID\n\nPavel reported that you can\u0027t set the SSID from \"foo\" to\n\"bar\". I tried reproducing, but used different values,\nwith different lengths, and thus never saw the obvious\nproblem.\n\nReported-by: Pavel Roskin \u003cproski@gnu.org\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "908d4369a394e816767d566d9c3d15a5af8c1c55",
      "tree": "a1aa369a55a6f998109448cdb6dbbcf77ff9b5f0",
      "parents": [
        "4b14c96dfbf068acb85c3fa2446b3949c0230deb"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Fri Jul 10 17:53:34 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:11 2009 -0400"
      },
      "message": "cfg80211: don\u0027t look at wdev-\u003essid for giwessid\n\nThis variable is only used internally, _while_ connected.\nIf we use it, the sequence\n\n# iwconfig wlan1 essid foo\n\u003cconnects\u003e\n# iwconfig wlan1 essid \"\"\n\u003cdisconnects\u003e\n# iwconfig\n\nwill still display \"foo\" as the SSID afterwards, which\nis obviously quite bogus. Fix this by only displaying\nthe wext SSID, if present.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "fffd0934b9390f34bec45762192b7edd3b12b4b5",
      "tree": "d9779803763261f5795fe39a402d79c4220a3a22",
      "parents": [
        "b9454e83cac42fcdc90bfbfba479132bd6629455"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 08 14:22:54 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 24 15:05:09 2009 -0400"
      },
      "message": "cfg80211: rework key operation\n\nThis reworks the key operation in cfg80211, and now only\nallows, from userspace, configuring keys (via nl80211)\nafter the connection has been established (in managed\nmode), the IBSS been joined (in IBSS mode), at any time\n(in AP[_VLAN] modes) or never for all the other modes.\n\nIn order to do shared key authentication correctly, it\nis now possible to give a WEP key to the AUTH command.\nTo configure static WEP keys, these are given to the\nCONNECT or IBSS_JOIN command directly, for a userspace\nSME it is assumed it will configure it properly after\nthe connection has been established.\n\nSince mac80211 used to check the default key in IBSS\nmode to see whether or not the network is protected,\nit needs an update in that area, as well as an update\nto make use of the WEP key passed to auth() for shared\nkey authentication.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "667503ddcb96f3b10211f997fe55907fa7509841",
      "tree": "5e2559e94a716bb81bfc7566e3e3a05267810c31",
      "parents": [
        "4f5dadcebb55fccef34722bbbf6401d39124c8a4"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Tue Jul 07 03:56:11 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:02:32 2009 -0400"
      },
      "message": "cfg80211: fix locking\n\nOver time, a lot of locking issues have crept into\nthe smarts of cfg80211, so e.g. scan completion can\nrace against a new scan, IBSS join can race against\nleaving an IBSS, etc.\n\nIntroduce a new per-interface lock that protects\nmost of the per-interface data that we need to keep\ntrack of, and sprinkle assertions about that lock\neverywhere. Some things now need to be offloaded to\nwork structs so that we don\u0027t require being able to\nsleep in functions the drivers call. The exception\nto that are the MLME callbacks (rx_auth etc.) that\ncurrently only mac80211 calls because it was easier\nto do that there instead of in cfg80211, and future\ndrivers implementing those calls will, if they ever\nexist, probably need to use a similar scheme like\nmac80211 anyway...\n\nIn order to be able to handle _deauth and _disassoc\nproperly, introduce a cookie passed to it that will\ndetermine locking requirements.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "19957bb399e2722719c0e20c9ae91cf8b6aaff04",
      "tree": "9c4d53fe5938ceee41333a1afd5be0ed5c1ce313",
      "parents": [
        "517357c685ccc4b5783cc7dbdae8824ada19a97f"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Thu Jul 02 17:20:43 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:53 2009 -0400"
      },
      "message": "cfg80211: keep track of BSSes\n\nIn order to avoid problems with BSS structs going away\nwhile they\u0027re in use, I\u0027ve long wanted to make cfg80211\nkeep track of them. Without the SME, that wasn\u0027t doable\nbut now that we have the SME we can do this too. It can\nkeep track of up to four separate authentications and\none association, regardless of whether it\u0027s controlled\nby the cfg80211 SME or the userspace SME.\n\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    },
    {
      "commit": "f21293549f60f88c74fcb9944737f11048896dc4",
      "tree": "d4a00663f87816c0c742e74d7b2c9bad31a18816",
      "parents": [
        "6829c878ecd24ff0ae41b4668c7e9d0f11b66942"
      ],
      "author": {
        "name": "Johannes Berg",
        "email": "johannes@sipsolutions.net",
        "time": "Wed Jul 01 21:26:56 2009 +0200"
      },
      "committer": {
        "name": "John W. Linville",
        "email": "linville@tuxdriver.com",
        "time": "Fri Jul 10 15:01:51 2009 -0400"
      },
      "message": "cfg80211: managed mode wext compatibility\n\nThis adds code to make it possible to use the cfg80211\nconnect() API with wireless extensions, and because the\nprevious patch added emulation of that API with auth()\nand assoc(), by extension also supports wext on that.\nAt the same time, removes code from mac80211 for wext,\nbut doesn\u0027t yet clean up mac80211\u0027s mlme code more.\n\nSigned-off-by: Samuel Ortiz \u003csamuel.ortiz@intel.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n"
    }
  ]
}
