)]}'
{
  "commit": "18ab08b71e6b29e67b36df5e2261569d381b1708",
  "tree": "1160aff3b43a6e0bdf5e8b553425ad5bea12640f",
  "parents": [
    "c49a2747f6a6199dba27c0c413f4de6112fa649e"
  ],
  "author": {
    "name": "Paul Jakma",
    "email": "paul.jakma@hpe.com",
    "time": "Wed Jan 27 16:37:33 2016 +0000"
  },
  "committer": {
    "name": "Paul Jakma",
    "email": "paul.jakma@hpe.com",
    "time": "Tue Mar 08 17:53:10 2016 +0000"
  },
  "message": "bgpd: Regularise BGP NLRI sanity checks a bit\n\n* bgp_route.h: (bgp_nlri_sanity_check) The bulk of the args are equivalent\n  to a (struct bgp_nlri), consolidate.\n* bgp_route.c: (bgp_nlri_sanity_check) Make this a frontend for all afi/safis.\n  Including SAFI_MPLS_LABELED_VPN.\n  (bgp_nlri_sanity_check_ip) Regular IP NLRI sanity check based on the\n  existing code, and adjusted for (struct bgp_nlri *) arg.\n* bgp_attr.c: (bgp_mp_reach_parse) Adjust for passing (struct bgp_nlri *)\n  to bgp_nlri_sanity_check.\n  Get rid of special-casing to not sanity check VPN.\n  (bgp_mp_unreach_parse) Ditto.\n\n* bgp_mplsvpn.c: Use the same VPN parsing code for both the sanity\n  check and the actual parse.\n\n  (bgp_nlri_parse_vpn) renamed to bgp_nlri_parse_vpn_body and made\n  internal.\n\n  (bgp_nlri_parse_vpn_body) Added (bool) argument to control whether it\n  is sanity checking or whether it should update routing state for each\n  NLRI.  Send a NOTIFY and reset the session, if there\u0027s a parsing\n  error, as bgp_nlri_sanity_check_ip does, and as is required by the\n  RFC.\n\n  (bgp_nlri_parse_vpn) now a wrapper to call _body with update.\n\n  (bgp_nlri_sanity_check_vpn) wrapper to call parser without\n  updating.\n\n* bgp_mplsvpn.h: (bgp_nlri_sanity_check_vpn) export for\n  bgp_nlri_sanity_check.\n\n* bgp_packet.c: (bgp_update_receive) Adjust for bgp_nlri_sanity_check\n  argument changes.\n\n* test/bgp_mp_attr_test.c: Extend to also test the NLRI parsing functions,\n  if the initial MP-attr parsing has succeeded.  Fix the NLRI in the\n  VPN cases.  Add further VPN tests.\n\n* tests/bgpd.tests/testbgpmpattr.exp: Add the new test cases.\n\nThis commit a joint effort of:\n\nLou Berger \u003clberger@labn.net\u003e\nDonald Sharp \u003csharpd@cumulusnetworks.com\u003e\nPaul Jakma \u003cpaul.jakma@hpe.com\u003e / \u003cpaul@jakma.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "888f11a19f4673f997ff9e49323ec7093b68a876",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_attr.c",
      "new_id": "98571dab5cbed20268d606d4275d9d7c85744515",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_attr.c"
    },
    {
      "type": "modify",
      "old_id": "f8b43df8824a5c62788dd2066c356130813c53e3",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_mplsvpn.c",
      "new_id": "900bc4875a2276d4ca98bdcd3008c2ad6f5d742d",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_mplsvpn.c"
    },
    {
      "type": "modify",
      "old_id": "3299b9cb9a0474cd6e48d735e1cd4de9e9305325",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_mplsvpn.h",
      "new_id": "b89b6d8acc0abcddeede5a645c187fc49999e210",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_mplsvpn.h"
    },
    {
      "type": "modify",
      "old_id": "b8a38fa56065b85a63e8dcc138c40ee7baecddb9",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_packet.c",
      "new_id": "d40c24c2cf75fb2238f5d36614fe1decec1de85e",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_packet.c"
    },
    {
      "type": "modify",
      "old_id": "0dcae61ea559dc4e3dc49bdc64909300e06fd983",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_route.c",
      "new_id": "c1e5e59b12232d5ab92487ca1e44e4c4cd9daa07",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_route.c"
    },
    {
      "type": "modify",
      "old_id": "8e9bcbd1ca6eb07995b125c4299c2b19981e0792",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_route.h",
      "new_id": "c16eca7bb3288556939bf2a4165bdc7405d9444a",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_route.h"
    },
    {
      "type": "modify",
      "old_id": "6dc6757cd92c41046e6297387f32977db37d68a6",
      "old_mode": 33188,
      "old_path": "tests/bgp_mp_attr_test.c",
      "new_id": "39f3b0da12f2b8315031ac71e23b8ace87ed7c40",
      "new_mode": 33188,
      "new_path": "tests/bgp_mp_attr_test.c"
    },
    {
      "type": "modify",
      "old_id": "646bbe5060449ca35b4c48956e4d81b139f58ced",
      "old_mode": 33188,
      "old_path": "tests/bgpd.tests/testbgpmpattr.exp",
      "new_id": "e6d7305a688d41037738bff90504f7b1c312702d",
      "new_mode": 33188,
      "new_path": "tests/bgpd.tests/testbgpmpattr.exp"
    }
  ]
}
