)]}'
{
  "commit": "5c6d1125f8dbd1bfef39e38fbc2837003be78a59",
  "tree": "368d34e800bc5478442679323270d776b79501e8",
  "parents": [
    "fe27d4b012273640e033be80f143bdc54daa8e16"
  ],
  "author": {
    "name": "Jarkko Sakkinen",
    "email": "ext-jarkko.2.sakkinen@nokia.com",
    "time": "Tue Dec 07 13:34:01 2010 +0200"
  },
  "committer": {
    "name": "Casey Schaufler",
    "email": "casey@schaufler-ca.com",
    "time": "Tue Dec 07 14:04:02 2010 -0800"
  },
  "message": "Smack: Transmute labels on specified directories\n\nIn a situation where Smack access rules allow processes\nwith multiple labels to write to a directory it is easy\nto get into a situation where the directory gets cluttered\nwith files that the owner can\u0027t deal with because while\nthey could be written to the directory a process at the\nlabel of the directory can\u0027t write them. This is generally\nthe desired behavior, but when it isn\u0027t it is a real\nissue.\n\nThis patch introduces a new attribute SMACK64TRANSMUTE that\ninstructs Smack to create the file with the label of the directory\nunder certain circumstances.\n\nA new access mode, \"t\" for transmute, is made available to\nSmack access rules, which are expanded from \"rwxa\" to \"rwxat\".\nIf a file is created in a directory marked as transmutable\nand if access was granted to perform the operation by a rule\nthat included the transmute mode, then the file gets the\nSmack label of the directory instead of the Smack label of the\ncreating process.\n\nNote that this is equivalent to creating an empty file at the\nlabel of the directory and then having the other process write\nto it. The transmute scheme requires that both the access rule\nallows transmutation and that the directory be explicitly marked.\n\nSigned-off-by: Jarkko Sakkinen \u003cext-jarkko.2.sakkinen@nokia.com\u003e\nSigned-off-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "351c7901d74abe3ac18c28fa64c19d5661f66ec5",
      "old_mode": 33188,
      "old_path": "include/linux/xattr.h",
      "new_id": "e6131ef98d8fb94de08edb0db70ad39055e47cec",
      "new_mode": 33188,
      "new_path": "include/linux/xattr.h"
    },
    {
      "type": "modify",
      "old_id": "a2e2cdfab4ef2004c4e2820ba79f4a438abc8194",
      "old_mode": 33188,
      "old_path": "security/smack/smack.h",
      "new_id": "129c4eb8ffb10cbba9dce59ef4e5761624d19f7e",
      "new_mode": 33188,
      "new_path": "security/smack/smack.h"
    },
    {
      "type": "modify",
      "old_id": "42becbc1ce3322943e5f65e45928ae059db6fcbe",
      "old_mode": 33188,
      "old_path": "security/smack/smack_access.c",
      "new_id": "7ba8478f599e9c0b2e6ae01c88fa4dd0340c2c27",
      "new_mode": 33188,
      "new_path": "security/smack/smack_access.c"
    },
    {
      "type": "modify",
      "old_id": "7e19afe0e7388203368e1950cd04cbefab907eac",
      "old_mode": 33188,
      "old_path": "security/smack/smack_lsm.c",
      "new_id": "05dc4da2e25f435e90527c15bf19e7c4d7b41c4d",
      "new_mode": 33188,
      "new_path": "security/smack/smack_lsm.c"
    },
    {
      "type": "modify",
      "old_id": "01a0be93d8d08934888c6e6eceec2f68a6f29f79",
      "old_mode": 33188,
      "old_path": "security/smack/smackfs.c",
      "new_id": "362d5eda948be93a0671127b85dc55f8e2a04c95",
      "new_mode": 33188,
      "new_path": "security/smack/smackfs.c"
    }
  ]
}
