)]}'
{
  "commit": "9588bbd5529461a3dacd435bf239c84c3508f569",
  "tree": "dd00011714bdefdef1f818ac7caf53682253a515",
  "parents": [
    "b203ffc3a447eb8d9e6120b783ddee081b143061"
  ],
  "author": {
    "name": "Jouni Malinen",
    "email": "jouni.malinen@atheros.com",
    "time": "Wed Dec 23 13:15:41 2009 +0100"
  },
  "committer": {
    "name": "John W. Linville",
    "email": "linville@tuxdriver.com",
    "time": "Mon Dec 28 16:55:02 2009 -0500"
  },
  "message": "cfg80211: add remain-on-channel command\n\nAdd new commands for requesting the driver to remain awake\non a specified channel for the specified amount of time\n(and another command to cancel such an operation). This\ncan be used to implement userspace-controlled off-channel\noperations, like Public Action frame exchange on another\nchannel than the operation channel.\n\nThe off-channel operation should behave similarly to scan,\ni.e. the local station (if associated) moves into power\nsave mode to request the AP to buffer frames for it and\nthen moves to the other channel to allow the off-channel\noperation to be completed. The duration parameter can be\nused to request enough time to receive a response from\nthe target station.\n\nSigned-off-by: Jouni Malinen \u003cjouni.malinen@atheros.com\u003e\nSigned-off-by: Johannes Berg \u003cjohannes@sipsolutions.net\u003e\nSigned-off-by: John W. Linville \u003clinville@tuxdriver.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "da8ea2e192736d66e07bfd6aa866bbf51a4dbb14",
      "old_mode": 33188,
      "old_path": "include/linux/nl80211.h",
      "new_id": "2bfbe88837ef75923ea496ea04cb19c6b19202fd",
      "new_mode": 33188,
      "new_path": "include/linux/nl80211.h"
    },
    {
      "type": "modify",
      "old_id": "542a477a94da2e77c4f668d18cb70ba2fceb878a",
      "old_mode": 33188,
      "old_path": "include/net/cfg80211.h",
      "new_id": "b66beb052054d3ab54e7abfc6cdb2adc3bf84d3b",
      "new_mode": 33188,
      "new_path": "include/net/cfg80211.h"
    },
    {
      "type": "modify",
      "old_id": "a46ac6c9b3655dbc056b8a20846a972b2bba9fdb",
      "old_mode": 33188,
      "old_path": "net/wireless/chan.c",
      "new_id": "bf1737fc9a7e47fe448e71a058334fb5fdb1b068",
      "new_mode": 33188,
      "new_path": "net/wireless/chan.c"
    },
    {
      "type": "modify",
      "old_id": "35b712127143aa6a12622a86d893fc18de7b7d1a",
      "old_mode": 33188,
      "old_path": "net/wireless/core.h",
      "new_id": "30ec95f05b52c5f874f8060b957d98bb7f85142c",
      "new_mode": 33188,
      "new_path": "net/wireless/core.h"
    },
    {
      "type": "modify",
      "old_id": "acaeaa784d6880171079be80ed32509b09147b0f",
      "old_mode": 33188,
      "old_path": "net/wireless/mlme.c",
      "new_id": "11f6469b3f98b879423d01bb09d8cdb06db5d533",
      "new_mode": 33188,
      "new_path": "net/wireless/mlme.c"
    },
    {
      "type": "modify",
      "old_id": "60f854377f9036185e8c6f83434ba8c1566894e8",
      "old_mode": 33188,
      "old_path": "net/wireless/nl80211.c",
      "new_id": "ff857f10cb85f31859453ba11d8259857f5d3cab",
      "new_mode": 33188,
      "new_path": "net/wireless/nl80211.c"
    },
    {
      "type": "modify",
      "old_id": "44cc2a76a1b094149d6f292fd337512d157465e9",
      "old_mode": 33188,
      "old_path": "net/wireless/nl80211.h",
      "new_id": "a5e2de419b7a862786d94af868335b2ab03fe4f3",
      "new_mode": 33188,
      "new_path": "net/wireless/nl80211.h"
    }
  ]
}
