)]}'
{
  "commit": "0b74a0a5db7bcf65bf68c44b547b02b1310b5cdb",
  "tree": "d767a50f61d6dddaf145e8273e859fb29d74687f",
  "parents": [
    "b397cf4f0fc484c5ebfc8a680090055c8e6cbe32"
  ],
  "author": {
    "name": "Lu Feng",
    "email": "lu.feng@6wind.com",
    "time": "Fri Jul 18 06:13:19 2014 +0000"
  },
  "committer": {
    "name": "David Lamparter",
    "email": "equinox@opensourcerouting.org",
    "time": "Mon Sep 15 18:37:08 2014 +0200"
  },
  "message": "ripd: allow to enable/disable the ECMP feature\n\nIntroduce a new command \"[no] allow-ecmp\" to enable/disable the\nECMP feature in RIP. By default, ECMP is not allowed.\n\nOnce ECMP is disabled, only one route entry can exist in the list.\n\n* rip_zebra.c: adjust a debugging information, which shows the number\n               of nexthops according to whether ECMP is enabled.\n* ripd.c: rip_ecmp_add() will reject the new route if ECMP is not\n          allowed and some entry already exists.\n          A new configurable command \"allow-ecmp\" is added to control\n          whether ECMP is allowed.\n          When ECMP is disabled, rip_ecmp_disable() is called to\n          remove the multiple nexthops.\n* ripd.h: Add a new member \"ecmp\" to \"struct rip\", indicating whether\n          ECMP is allowed or not.\n\nSigned-off-by: Feng Lu \u003clu.feng@6wind.com\u003e\nReviewed-by: Alain Ritoux \u003calain.ritoux@6wind.com\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8b1c64d6e4396611498c52ca9c466822ebc17270",
      "old_mode": 33188,
      "old_path": "ripd/rip_zebra.c",
      "new_id": "b005ece9671924946480c0b33220373ad8147f8b",
      "new_mode": 33188,
      "new_path": "ripd/rip_zebra.c"
    },
    {
      "type": "modify",
      "old_id": "b00241c9b031e269abd78d1d3cf4df3a99bbab70",
      "old_mode": 33188,
      "old_path": "ripd/ripd.c",
      "new_id": "c69ef7fc6314dc59cbcf3637c8576153e51cfdf3",
      "new_mode": 33188,
      "new_path": "ripd/ripd.c"
    },
    {
      "type": "modify",
      "old_id": "0f0e2160ba85de1c2cbfad374b5f392cbcc73295",
      "old_mode": 33188,
      "old_path": "ripd/ripd.h",
      "new_id": "4f40e79ab65c687d87b928e0ef8d4d340e40a8bd",
      "new_mode": 33188,
      "new_path": "ripd/ripd.h"
    }
  ]
}
