)]}'
{
  "commit": "670f3dba6721a500418b5793a2b00579198d2bd7",
  "tree": "6ad3c568371acfc18e96883644f76ecdedd34d07",
  "parents": [
    "4d48bb360db5148b18524d06616555b06342fa68"
  ],
  "author": {
    "name": "Renato Westphal",
    "email": "renato@opensourcerouting.org",
    "time": "Mon Nov 28 16:47:13 2016 -0200"
  },
  "committer": {
    "name": "Paul Jakma",
    "email": "paul@quagga.net",
    "time": "Mon Jan 23 18:51:57 2017 +0000"
  },
  "message": "bgpd: fix invalid memory access in peer_free()\n\nWe shoult not call bgp_unlock() before calling\nbgp_delete_connected_nexthop() in the peer_free() function. Otherwise,\nif bgp-\u003elock reaches zero, bgp_free() is called and peer-\u003ebgp becomes\nan invalid pointer in the bgp_delete_connected_nexthop() function.\n\nTo fix this, move the call to bgp_unlock() to the end of peer_free().\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "56e4322b9fc06f791775d5b06eae9f4ef4b2dda1",
      "old_mode": 33188,
      "old_path": "bgpd/bgpd.c",
      "new_id": "69ab7da637d711b5d5059879198016a4b061ca02",
      "new_mode": 33188,
      "new_path": "bgpd/bgpd.c"
    }
  ]
}
