)]}'
{
  "commit": "bbccf41f8e5fb83831da81a339a578a3d5fc5f4a",
  "tree": "01495f12e5a9fa0cff3b1ddecb24bccb4975de35",
  "parents": [
    "a1239bc50d26ce963352f8ddaa6c1382e437d286"
  ],
  "author": {
    "name": "Dmitrij Tejblum",
    "email": "tejblum@yandex-team.ru",
    "time": "Fri Jan 14 18:27:05 2011 +0300"
  },
  "committer": {
    "name": "Denis Ovsienko",
    "email": "infrastation@yandex.ru",
    "time": "Mon Jul 04 21:02:00 2011 +0400"
  },
  "message": "bgpd: fix handling of \"Unsupported Capability\"\n\n* bgp_packet.c: (bgp_notify_receive) justify the difference between\nBGP_NOTIFY_OPEN_UNSUP_PARAM and BGP_NOTIFY_OPEN_UNSUP_CAPBL cases, as\nit is explained in RFC5492, page 3, paragraph 1.\n\n\"Unsupported Capability\" error does not mean, that the peer doesn\u0027t\nsupport capabilities advertisement -- quite the opposite (if the peer\nwould not support capabilities advertisement, the code would be\n\"Unsupported Optional Parameter\"). Thus there is no reason to mark\nthe peer as one non-supporting capabilities advertisement.\n\nExample: suppose the peer is in fact IPv6-only, but we didn\u0027t configure\nanything address-family specific for it. Then, the peer would refuse\nthe session with \"Unsupported Capability\" code. If we internally set\nthe peer as non-supporting capabilities advertisement after that, we\nwill not be able to establish the session with it ever, even with a\nfixed configuration -- IPv6-only BGP session cannot be established\nwithout capabilities.\n\nIn practice an edge case would be seen as the same IPv6 peer working\nwith its \"neighbor\" block read from bgpd.conf, but not working, when\nslowly input in \"conf t\" mode.\n(cherry picked from commit c7aa8abd8788c3607ad0131f02e892cf92221e40)\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "a5f9552cec52c217983504452112a0c71fa07a28",
      "old_mode": 33188,
      "old_path": "bgpd/bgp_packet.c",
      "new_id": "9102add73547b3aee110b64bae6b885ee0fed8de",
      "new_mode": 33188,
      "new_path": "bgpd/bgp_packet.c"
    }
  ]
}
