)]}'
{
  "commit": "6918e74b97fd40f947ebd2eded9ab24b8569d3b8",
  "tree": "e7d5e43b25eaf963065016d3998a78e5e5568111",
  "parents": [
    "8196f13d2ab7f3b09150c00328228f90391acb7c"
  ],
  "author": {
    "name": "Josh Bailey",
    "email": "joshb@google.com",
    "time": "Wed Jul 20 20:48:20 2011 -0700"
  },
  "committer": {
    "name": "Josh Bailey",
    "email": "joshb@google.com",
    "time": "Wed Jul 20 20:48:20 2011 -0700"
  },
  "message": "bgpd: For deterministic MED build a multipath set for each peer AS as the\nfirst stage of the best path calculation. The second stage then\nselects a winner from each peer AS\u0027s best path. In the second stage we\nclear multipath set of the non-selected best paths via\nbgp_mp_dmed_deselect(). Since the multipath set is already marked up\nfor the winning path, we don\u0027t call bgp_info_mpath_update() after the\nsecond stage calculation.\n\n* bgpd/bgp_mpath.c\n  * bgp_mp_dmed_deselect(): New function to cleanup the multipath\n    markup if a DMED selected path loses in stage 2 of the best path\n    calculation\n* bgpd/bgp_mpath.h\n  * Add external declaration of bgp_mp_dmed_deselect()\n* bgpd/bgp_route.c\n  * bgp_best_selection(): If multipath is enabled, build up the mp_list\n    for the current peer AS, and do the RIB markup the best path from\n    that AS. In the second stage, clear the RIB markup for the DMED\n    selected path if it is not selected as best. Only call\n    bgp_info_mpath_update() in the second stage when not doing\n    deterministic MED.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "af1c342c62ed688b6ece79e233a8c86b04025c4b",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_mpath.c",
      "new_id": "7944c55fc46631e2de857d479ad9a3a08d63e439",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_mpath.c"
    },
    {
      "type": "modify",
      "old_id": "1dc2687e22baf326a693793fbce16c62010ece8f",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_mpath.h",
      "new_id": "3712493ed67d080a6ceb51e8290833558cc5dc83",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_mpath.h"
    },
    {
      "type": "modify",
      "old_id": "f3e46221caf0b57a856f10de80bd48bdec731d0b",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_route.c",
      "new_id": "5c4ab266634de4170ad68f03ad61acf6c8f38748",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_route.c"
    }
  ]
}
