)]}'
{
  "commit": "5dc474d6b3ba19df7d491d4eabd9fb7a0c1c2423",
  "tree": "0f508a88537c0feb4edb6669bb54d12daa543c1b",
  "parents": [
    "4951704b4e23d71b99ac933d8e6993bc6225ac13"
  ],
  "author": {
    "name": "Julia Lawall",
    "email": "julia@diku.dk",
    "time": "Mon May 12 15:43:46 2008 -0700"
  },
  "committer": {
    "name": "David S. Miller",
    "email": "davem@davemloft.net",
    "time": "Mon May 12 15:43:46 2008 -0700"
  },
  "message": "pppol2tp: Remove null pointer dereference.\n\nIf session is NULL, it is not possible to access its name field.  So I\nhave split apart the printing of the error message to drop the\nprinting of the name field in this case.\n\nThe macro PRINTK actually only evaluates its arguments starting with\nthe third one if the bitwise conjunction of the first two is non-zero.\nNormally, this conjunction would only be non-zero if debugging mode\nwere turned on, but when session is NULL, the first argument in both\nthe old and new code is -1, and thus the bitwise conjunction is true.\nPerhaps a different strategy is desired, such as using tunnel-\u003edebug,\nwhich session-\u003edebug is initialized to, but tunnel can also be NULL,\nso this does not completely solve the problem.\n\n\nThis problem was found using the following semantic match\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@@\nexpression E, E1;\nidentifier f;\nstatement S1,S2,S3;\n@@\n\n* if (E \u003d\u003d NULL)\n{\n  ... when !\u003d if (E \u003d\u003d NULL) S1 else S2\n      when !\u003d E \u003d E1\n* E-\u003ef\n  ... when any\n  return ...;\n}\nelse S3\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "244d7830c92aac88486981f7ec52b3d3b141631f",
      "old_mode": 33188,
      "old_path": "drivers/net/pppol2tp.c",
      "new_id": "79359919335b466d5408e82e33c6d4eae452097e",
      "new_mode": 33188,
      "new_path": "drivers/net/pppol2tp.c"
    }
  ]
}
