)]}'
{
  "commit": "dd49eb1f0232cd0600a3565b44b5c066a8d7872d",
  "tree": "58598aae7dfc1c0ec2686314bf58b7e30d5e31a1",
  "parents": [
    "443010383e2c8e5dc1bc722d9e22a97c513b4647"
  ],
  "author": {
    "name": "Vipin Kumar",
    "email": "vipin@cumulusnetworks.com",
    "time": "Tue Sep 30 14:36:38 2014 -0700"
  },
  "committer": {
    "name": "Paul Jakma",
    "email": "paul@quagga.net",
    "time": "Tue Nov 11 17:26:10 2014 +0000"
  },
  "message": "Fix BGP\u0027s use of restart bit.\n\nbgpd-restart-bit-fix.patch\n\nISSUE:\n\nQuagga BGP doesn\u0027t send or use the restart-bit via the Graceful-Restart(GR)\ncapability. GR capability implementation isn\u0027t complete as per the RFC.\n\nPATCH:\n\nPatch uses BGP instance creation as the beginning of the startup period,\nand \u0027restart_time\u0027 is taken as the startup period. As a result, BGP will\nset the restart bit in the GR capability of the OPEN messages during the\nstartup period.\n\nAs an indication of quagga implementation\u0027s capability of sending End-Of-RIB,\nhelping a restarting neighbor, quagga BGP will now send global GR capability\nirrespective of the graceful-restart config in BGP and the address-family\nspecific GR capability will be sent only if the GR config is present.\nForwarding bit is not set assuming its not preserved.\n\nIncorporated feedback from David Lamparter via the quagga-dev mailing list.\n\nSigned-off-by: Vipin Kumar \u003cvipin@cumulusnetworks.com\u003e\nReviewed-by: Pradosh Mohapatra \u003cpmohapat@cumulusnetworks.com\u003e\nReviewed-by: Paul Jakma \u003cpaul@opensourcerouting.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7bf350165b670028591465cdfa4713bc4d1db3a0",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_open.c",
      "new_id": "fe741aa3acdac50acbd3c6563fde5e7554b91f14",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_open.c"
    },
    {
      "type": "modify",
      "old_id": "35a22c1e335d0d956ca44db4ec26fa5da01e585f",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_packet.c",
      "new_id": "14fd6e51e948910b8f0e3dff29afbdbca427612f",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_packet.c"
    },
    {
      "type": "modify",
      "old_id": "3a9bc480a25d707e8d9d7a1d4725b7eacd53c1f1",
      "old_mode": 33188,
      "old_path": "bgpd/bgpd.c",
      "new_id": "79bcaaf05c1e65033297152d39f451c3b1baf3d7",
      "new_mode": 33188,
      "new_path": "bgpd/bgpd.c"
    },
    {
      "type": "modify",
      "old_id": "eae803de1435f72f6ef4134df64147e04d9fa1e4",
      "old_mode": 33188,
      "old_path": "bgpd/bgpd.h",
      "new_id": "40c381c249e9950463f2aa457274921f013bb187",
      "new_mode": 33188,
      "new_path": "bgpd/bgpd.h"
    }
  ]
}
