)]}'
{
  "commit": "fd75815f727f157a05f4c96b5294a4617c0557da",
  "tree": "b2e76abf176d37b5d810b0c813b8c0219754b88c",
  "parents": [
    "31d5a79d7f3d436da176a78ebc12d53c06da402e"
  ],
  "author": {
    "name": "David Howells",
    "email": "dhowells@redhat.com",
    "time": "Fri May 11 10:56:56 2012 +0100"
  },
  "committer": {
    "name": "David Howells",
    "email": "dhowells@redhat.com",
    "time": "Fri May 11 10:56:56 2012 +0100"
  },
  "message": "KEYS: Add invalidation support\n\nAdd support for invalidating a key - which renders it immediately invisible to\nfurther searches and causes the garbage collector to immediately wake up,\nremove it from keyrings and then destroy it when it\u0027s no longer referenced.\n\nIt\u0027s better not to do this with keyctl_revoke() as that marks the key to start\nreturning -EKEYREVOKED to searches when what is actually desired is to have the\nkey refetched.\n\nTo invalidate a key the caller must be granted SEARCH permission by the key.\nThis may be too strict.  It may be better to also permit invalidation if the\ncaller has any of READ, WRITE or SETATTR permission.\n\nThe primary use for this is to evict keys that are cached in special keyrings,\nsuch as the DNS resolver or an ID mapper.\n\nSigned-off-by: David Howells \u003cdhowells@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "d389acd31e19405410ca87acbe689739e0d35771",
      "old_mode": 33188,
      "old_path": "Documentation/security/keys.txt",
      "new_id": "aa0dbd74b71bdb242009483ce18492796fefa6aa",
      "new_mode": 33188,
      "new_path": "Documentation/security/keys.txt"
    },
    {
      "type": "modify",
      "old_id": "13c0dcd8ee483bd9abe21c02d359c96c8b60fa6f",
      "old_mode": 33188,
      "old_path": "include/linux/key.h",
      "new_id": "b145b054b3e0c3244214bc959f339c0ba3cfe55f",
      "new_mode": 33188,
      "new_path": "include/linux/key.h"
    },
    {
      "type": "modify",
      "old_id": "9b0b865ce622e5620cb56aa1bfa9caa49c5bdc13",
      "old_mode": 33188,
      "old_path": "include/linux/keyctl.h",
      "new_id": "c9b7f4faf97aa5a790f6b58fd6d9da25ca2ebd64",
      "new_mode": 33188,
      "new_path": "include/linux/keyctl.h"
    },
    {
      "type": "modify",
      "old_id": "4c48e13448f84e0df200ab0a2f0895d0eb5a709c",
      "old_mode": 33188,
      "old_path": "security/keys/compat.c",
      "new_id": "fab4f8dda6c6fdf6acdebd1385bb39caae4c8b97",
      "new_mode": 33188,
      "new_path": "security/keys/compat.c"
    },
    {
      "type": "modify",
      "old_id": "adddaa258d5095fded2858ad1547bb3f258769ef",
      "old_mode": 33188,
      "old_path": "security/keys/gc.c",
      "new_id": "61ab7c82ebb12f1470d26d6aa29519f9c33a3ce9",
      "new_mode": 33188,
      "new_path": "security/keys/gc.c"
    },
    {
      "type": "modify",
      "old_id": "65647f825584becdfa1db48302be9ba5e33df88e",
      "old_mode": 33188,
      "old_path": "security/keys/internal.h",
      "new_id": "f711b094ed412e723207e5d75ceb86a0c81e4439",
      "new_mode": 33188,
      "new_path": "security/keys/internal.h"
    },
    {
      "type": "modify",
      "old_id": "dc628941ecd3714b02027dd7bd46eaaae52934d9",
      "old_mode": 33188,
      "old_path": "security/keys/key.c",
      "new_id": "c9bf66ac36e0ff6d566c2d02a358f4551371de66",
      "new_mode": 33188,
      "new_path": "security/keys/key.c"
    },
    {
      "type": "modify",
      "old_id": "fb767c6cd99f6a92da8fa989999a18988bce1a19",
      "old_mode": 33188,
      "old_path": "security/keys/keyctl.c",
      "new_id": "ddb3e05bc5fcd12fae86cf9c60edf6a1f57439c1",
      "new_mode": 33188,
      "new_path": "security/keys/keyctl.c"
    },
    {
      "type": "modify",
      "old_id": "89d02cfb00c20a4cebda9ab0fc867677644c6bc3",
      "old_mode": 33188,
      "old_path": "security/keys/keyring.c",
      "new_id": "7445875f681807559aaa9a071ff1d0eea41bc93c",
      "new_mode": 33188,
      "new_path": "security/keys/keyring.c"
    },
    {
      "type": "modify",
      "old_id": "c35b5229e3cdca80bcd6b44da70b5123871e1874",
      "old_mode": 33188,
      "old_path": "security/keys/permission.c",
      "new_id": "5f4c00c0947dca355da0cb1fc44421b0135ad57b",
      "new_mode": 33188,
      "new_path": "security/keys/permission.c"
    },
    {
      "type": "modify",
      "old_id": "49bbc97943ad8b804e22ff69150083a0f891ffd5",
      "old_mode": 33188,
      "old_path": "security/keys/proc.c",
      "new_id": "30d1ddfd9cef07508e19b08a44b1be493705ec3c",
      "new_mode": 33188,
      "new_path": "security/keys/proc.c"
    }
  ]
}
