)]}'
{
  "commit": "68ec424eb8557f86d08fcb7ab3c5366cbf3eca0e",
  "tree": "63d4630ccfb5e0f366881fa98d42e62842d67239",
  "parents": [
    "cc216b7978b038667626afd3f70dda8f70c46e4e"
  ],
  "author": {
    "name": "Paul Jakma",
    "email": "paul.jakma@hpe.com",
    "time": "Wed Nov 25 17:14:34 2015 +0000"
  },
  "committer": {
    "name": "Paul Jakma",
    "email": "paul.jakma@hpe.com",
    "time": "Wed Feb 10 15:06:17 2016 +0000"
  },
  "message": "bgpd: OPEN parse errors should send OPEN_ERR and UNSPECIFIC subcode.\n\nCEASE NOTIFICATION for OPEN parsing errors seems, to my reading of RFC4271\n§6.2 to be incorrect.\n\n* bgp_packet.c: (bgp_open_receive) OPEN/UNACEP_HOLDTIME is not an\n  appropriate error subcode if bgp_open_option_parse returns an error.  Set\n  it to \"Unspecific\". Where a more specific subcode is appropriate, then lower\n  level should send that.\n* bgp_open.c: (bgp_open_option_parse) Malformed OPENs should result in\n  NOTIFICATION with OPEN error, and OPEN/UNSPECIFIC sub-code - not CEASE.\n  (bgp_capability_{parse,orf_entry}) ditto.\n* bgpd.h: Add BGP_NOTIFY_OPEN_UNSPECIFIC for 0.  Note that IANA lists 0 as\n  reserved in the OPEN error sub-code registry, but RFC4271 page 32 says 0\n  is the \"Unspecific\" OPEN error subcode.\n\n  Have emailed IANA, they says it\u0027s a known errate to 4271 under review.\n\n  Some inspiration from Cumulus\u0027 bgpd-capability-cleanup.patch, though\n  v different result.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b9d6e93f3335b4bf5edb751e4c3bc97329693de5",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_open.c",
      "new_id": "727388283c7437b04105890b37a1b2f8e97578e6",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_open.c"
    },
    {
      "type": "modify",
      "old_id": "a90e56b50a1e36340e3d7994b511172aa4de63ae",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_packet.c",
      "new_id": "0639f4ddd01e9caa0361575a57cd3dd4c09a1375",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_packet.c"
    },
    {
      "type": "modify",
      "old_id": "d4c8dbd8aa30d500be4f69f903fb5881ba8c0450",
      "old_mode": 33188,
      "old_path": "bgpd/bgpd.h",
      "new_id": "2c4fb2096c256466e1dadd8ad0fc226927218206",
      "new_mode": 33188,
      "new_path": "bgpd/bgpd.h"
    }
  ]
}
