)]}'
{
  "log": [
    {
      "commit": "4d3ae716ce86c28e3979c9ae57c4e717ac5e27e4",
      "tree": "42d84ffb3cfe8a1f267c059e3a62fea87554f1c7",
      "parents": [
        "325823a5f07d6850318e52f6e66691eca59d24fe"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Fri Jan 15 17:36:32 2016 +0200"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:46 2016 +0000"
      },
      "message": "zebra: remove metric from kernel\n\nIt simplifies things as we can do atomic replace of route prefix.\nAnd it seems there\u0027s some race condition somewhere that can result\nin an incorrect change request leaving prefixes in kernel when\nthey were intended to be replaced/deleted.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "325823a5f07d6850318e52f6e66691eca59d24fe",
      "tree": "9be443652c5c0734b6761a84f44980be7958b708",
      "parents": [
        "82a6635ca580ccd3c31551c960ec3de816b6c15d"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Fri Jan 15 17:36:31 2016 +0200"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:46 2016 +0000"
      },
      "message": "zebra: support FIB override routes\n\nFIB override routes are for routing protocols that establish\nshortcut routes, or establish point-to-point routes that should\nnot be redistributed. Namely this is useful NHRP daemon to come.\n\nZebra is extended to select two entries from RIB the \"best\" entry\nfrom routing protocols, and the FIB entry to install to kernel.\nFIB override routes are never selected as best entry, and thus\nare never adverticed to other routing daemons. The best FIB\noverride, or if it does not exist the otherwise best RIB is\nselected as FIB entry to be installed.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "82a6635ca580ccd3c31551c960ec3de816b6c15d",
      "tree": "d55f7b9894ccfda8f6b3295fd1efdf86356c1969",
      "parents": [
        "0abf6796c3d8ae8f5ea8624668424bc1554de25e"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Fri Jan 15 17:36:30 2016 +0200"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:46 2016 +0000"
      },
      "message": "zebra: use link scope for interface routes\n\nIn linux, \u0027scope\u0027 is a hint of distance of the IP. And this is\nevident from the fact that only lower scope can be used as recursive\nvia lookup result. This changes all interface routes scope to link\nso kernel will allow regular routes to use it as via. Then we do\nnot need to use the \u0027onlink\u0027 attribute.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "0abf6796c3d8ae8f5ea8624668424bc1554de25e",
      "tree": "2d1713deeb970d79930912588341ff756949b49c",
      "parents": [
        "b0d02889624eaafa0984873dcd78c086418bdf13"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Fri Jan 15 17:36:29 2016 +0200"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:46 2016 +0000"
      },
      "message": "zebra: atomic FIB updates\n\nThis commit updates the kernel API so that route changes are\natomically updated using change/replaces messages instead\nof first sending a withdraw followed with update.\n\nSame for zclient updates, changes are sent as single ADD\ninstead of DELETE + ADD.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "b0d02889624eaafa0984873dcd78c086418bdf13",
      "tree": "8f15cb8a76935d04c0a18d28a647bc0915d7d86a",
      "parents": [
        "205e6744f2dc2909dd494c9ce8acb82821459f1f"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Fri Jan 08 07:37:14 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:45 2016 +0000"
      },
      "message": "lib, bgpd: Remove \u0027struct fifo\u0027 from lib/zebra.h\n\nThe \u0027struct fifo\u0027 and it\u0027s accompanying #defines do not\nbelong in lib/zebra.h.  Move them into their own header.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "205e6744f2dc2909dd494c9ce8acb82821459f1f",
      "tree": "a996419a840766d2ffa1025805e1be84a2dacdf4",
      "parents": [
        "544ec70f66d0ec081dadde79bec1f25c2241f57f"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:11 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:45 2016 +0000"
      },
      "message": "bgpd: remove HAVE_IPV6 conditionals\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nTested-by: NetDEF CI System \u003ccisystem@netdef.org\u003e\n"
    },
    {
      "commit": "544ec70f66d0ec081dadde79bec1f25c2241f57f",
      "tree": "35d0ec1b6e4c693192cc6e3a0ddd7482e1c32802",
      "parents": [
        "f9b6c3938642090ffa1cae8b7125abff2b1e9fb0"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:10 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:45 2016 +0000"
      },
      "message": "doc: Add AFI/SAFI show commands to manual\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "f9b6c3938642090ffa1cae8b7125abff2b1e9fb0",
      "tree": "f6e9632134c3d8bb81b681b28e635eefd167dd46",
      "parents": [
        "bf1ae6c683a53d7f43c273afb55d52ccc233296b"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:09 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:45 2016 +0000"
      },
      "message": "bgpd: Add back old forms of \u0027show \u003cafi\u003e \u003csafi\u003e\u0027 for compatibility\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "bf1ae6c683a53d7f43c273afb55d52ccc233296b",
      "tree": "3224355a90930170b47cccfafbeabe6bb9f27d09",
      "parents": [
        "651b402d32b52ecf7ea1d979bf83b88ff799e134"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:08 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:45 2016 +0000"
      },
      "message": "bgpd: drop machineparse / random \"show\" improvements\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "651b402d32b52ecf7ea1d979bf83b88ff799e134",
      "tree": "57af25243a7523908a2f76c1832267dd2708e364",
      "parents": [
        "35c36863f42e3c3e61a0cae400ffa80905c96d45"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:07 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgpd: encap show commands\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "35c36863f42e3c3e61a0cae400ffa80905c96d45",
      "tree": "0bfe81796a7fa5887b797c89f6c558e5ee70f278",
      "parents": [
        "135ca1502cc54d9ad00b60b3410a0932bfeceb29"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:06 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgpd: VPNv6 show commands\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "135ca1502cc54d9ad00b60b3410a0932bfeceb29",
      "tree": "5bffa5f6cc373e3c5d4522768a52973b6bb8973c",
      "parents": [
        "a3fda886cdd48b6d8c421ebb1401142fa9ee93b0"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:05 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgpd: cleanup vty bgp_node_afi/safi utils\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "a3fda886cdd48b6d8c421ebb1401142fa9ee93b0",
      "tree": "42a5e6fda0978185128544fd199caf8ed93e58a3",
      "parents": [
        "637035710a2f8e1e5944ee714135b7f88ac15ac4"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:04 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgpd, lib, vtysh: hook up bgp ENCAP CLI node\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "637035710a2f8e1e5944ee714135b7f88ac15ac4",
      "tree": "857f655fcd45e10f2947457f66e3a0d293c89955",
      "parents": [
        "298cc2f688dbadf0a447fcd06ae8e20fa5006ce4"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:03 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgp: Reorg cleanup to align process and bgp instance init/destroy\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "298cc2f688dbadf0a447fcd06ae8e20fa5006ce4",
      "tree": "50a27a17c45edc4e6a0b200617db0f066bb42fc2",
      "parents": [
        "c3741789530ee824693fd606356acac2ad695f83"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:02 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:44 2016 +0000"
      },
      "message": "bgpd: encap: add encap SAFI (RFC5512)\n\nAdds RFC5512 and Encapsulation Attribute.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "c3741789530ee824693fd606356acac2ad695f83",
      "tree": "ad68a56ed567517367a3916ff4372f420b139326",
      "parents": [
        "5a81fc9ae610ff343902ebabc12237d6e40d91cb"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:01 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd: encap: add attribute handling\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nReviewed-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "5a81fc9ae610ff343902ebabc12237d6e40d91cb",
      "tree": "734cdcaca446bf42934bb2fce98c1799c88c1bfb",
      "parents": [
        "050defe816e4bd4cac7b028f69e45cb1974ca96d"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:42:00 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd: encap: extend extcommunity handling\n\nAdd code to print ENCAP communities.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "050defe816e4bd4cac7b028f69e45cb1974ca96d",
      "tree": "212e07eb351c8ebd2282e4798d493cf2e64492c9",
      "parents": [
        "d5d5e3e04fc41b9a89b7ce9049fd322bdbde2e4d"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:59 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd: general MP/SAFI improvements\n\nThis fixes some minor mixups particularly in MPLS-related SAFIs, as well\nas doing some stylistic changes \u0026 adding comments.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nReviewed-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "d5d5e3e04fc41b9a89b7ce9049fd322bdbde2e4d",
      "tree": "7199aaf51bd89a8532b46cff042316ed00a2d6ad",
      "parents": [
        "82dd707988b7481e203cab058c92f0b3041dd558"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:58 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd: tests - add null pointer protection to fix bgp test failures\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "82dd707988b7481e203cab058c92f0b3041dd558",
      "tree": "01923f2a1a5b0ca381e9eb7b093f467ca4cc942b",
      "parents": [
        "13c378d96a57017f5995b2e0df46cfc31123f0e8"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:57 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd: improve cleanup in bgp_delete()\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "13c378d96a57017f5995b2e0df46cfc31123f0e8",
      "tree": "6b4669bf22264a816ef451f3058cd8f59872eab5",
      "parents": [
        "9da04bca0e994ec92b9242159bf27d89c6743354"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:56 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:43 2016 +0000"
      },
      "message": "bgpd, lib, vtysh: hook up bgp VPNv6 CLI node\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "9da04bca0e994ec92b9242159bf27d89c6743354",
      "tree": "3c38048088082749e2ba7f03f15bdbff19234f0c",
      "parents": [
        "a03bd16eedc5077e98716509b8918ed365227e02"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:55 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "bgpd: wire up VPNv6 protocol processing\n\nThere wasn\u0027t much missing for VPNv6 to begin with; just a few bits of\nde- \u0026 encoding and a few lists to be updated.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n\n[Editorial note: Signed-off-by may imply an authorship claim, but need not]\n\nEdited-by: Paul Jakma \u003cpaul.jakma@hpe.com\u003e / \u003cpaul@jakma.org\u003e\n"
    },
    {
      "commit": "a03bd16eedc5077e98716509b8918ed365227e02",
      "tree": "ce2cdce1e28a98318bd4605e7f70c43267cc5eb7",
      "parents": [
        "a76d9ca3584c1751a592457c167c1e146648ceb6"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:54 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "bgpd: handle AS4 and EOI route distinguishers\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "a76d9ca3584c1751a592457c167c1e146648ceb6",
      "tree": "6415cbd12e4f1cfeadc552b05f6ac06da10d51f6",
      "parents": [
        "4d80560a2b064182191371fd7e4304bf829a4d9f"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:53 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "bgpd: make _vpnv4 static handling SAFI-agnostic\n\nThis changes the existing _vpnv4 functions for MPLS-VPN into\nSAFI-agnostic functions, renaming them from *_vpnv4 to *_safi.\n\nAlso adds route-map support while at it.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nReviewed-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "4d80560a2b064182191371fd7e4304bf829a4d9f",
      "tree": "d99a5c6f87bc92e0201afa263b4bd853e07a26b1",
      "parents": [
        "3e841d3b49bdb475ce793eee5d82e5137dff57d3"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:52 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "bgpd: kill unused variable in bgp_socket()\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "3e841d3b49bdb475ce793eee5d82e5137dff57d3",
      "tree": "6d3d9a0dde3bcd83631b2abd7764e13d7485b9ae",
      "parents": [
        "2daf7f3a8d69213f35b16a04dbe300957481a811"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:51 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "bgpd: add nexthop length to AF macro\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "2daf7f3a8d69213f35b16a04dbe300957481a811",
      "tree": "13a66fd8d74fd79db772307361b4af1738fd95fe",
      "parents": [
        "c7f7e49a4f68c92152384582ff70d64609858170"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:50 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "lib: add SAFI_ENCAP type, safi2str prefix utility\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "c7f7e49a4f68c92152384582ff70d64609858170",
      "tree": "44838e385af5ac715247037db1e6e1b48a500707",
      "parents": [
        "f9ec4190f1eaf2dba355a9808bca8d7148bc8a55"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:49 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:42 2016 +0000"
      },
      "message": "lib: add facility to log all CLI commands\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "f9ec4190f1eaf2dba355a9808bca8d7148bc8a55",
      "tree": "de588e9501d2f43c347356fe346c409d6a33c6fd",
      "parents": [
        "9248b61f54955e56212f3ae4c8a7ab704f7ad01c"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:48 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:41 2016 +0000"
      },
      "message": "lib: add \"show commandtree\" CLI command\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "9248b61f54955e56212f3ae4c8a7ab704f7ad01c",
      "tree": "d97f0d05991233191a400e6acaa6a164594a2d59",
      "parents": [
        "672900382d47137638086bd8351b2678f589a546"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:47 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:41 2016 +0000"
      },
      "message": "lib: treat realloc of null pointer as alloc Now use zalloc rather than alloc with null. Fixes issue seen in bgp check tests.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\n"
    },
    {
      "commit": "672900382d47137638086bd8351b2678f589a546",
      "tree": "c6b482ed46f8dc8f0be79144173ccae152a3a726",
      "parents": [
        "40278bd4c51939ccf8ec06ef1f33aedf8f05e86c"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:46 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:41 2016 +0000"
      },
      "message": "lib: fix bookkeeping for libreadline malloc()s\n\nWhen libreadline is used, we mistakenly mix in strdup() done in\nlibreadline with Quagga\u0027s lib/memory bookkeeping/counting, leading to\ncounter underflows on MTYPE_TMP.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "40278bd4c51939ccf8ec06ef1f33aedf8f05e86c",
      "tree": "569686df98a09491cf051593b91ea43206f956f4",
      "parents": [
        "b05c6ca57130f079f8a8a6686d9d4ffa5ff440f0"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:45 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:41 2016 +0000"
      },
      "message": "zebra: additional redistribute related logging\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "b05c6ca57130f079f8a8a6686d9d4ffa5ff440f0",
      "tree": "5533689d6a3ff733280cd7a5458a562a8fe032d7",
      "parents": [
        "d7be042378eac103634ab62abf4b2a5ca225092d"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:44 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:41 2016 +0000"
      },
      "message": "zebra: make RTF_LLINFO optional to fix FreeBSD\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "d7be042378eac103634ab62abf4b2a5ca225092d",
      "tree": "63901594ccd70f4fa15d9f9b90a578e8573f931b",
      "parents": [
        "0490729cc033a3483fc6b0ed45085ee249cac779"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Tue Jan 12 13:41:43 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:40 2016 +0000"
      },
      "message": "zebra: wire up \"debug zebra packet detail\"\n\nThere was no way to actually set ZEBRA_DEBUG_DETAIL, even though some\ndebug output was conditional to it.  Add CLI command.\n\nSigned-off-by: Lou Berger \u003clberger@labn.net\u003e\nSigned-off-by: David Lamparter \u003cequinox@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "0490729cc033a3483fc6b0ed45085ee249cac779",
      "tree": "fb2822462801e3bc82ae1425d065d3d5e4d71954",
      "parents": [
        "7748fdc757a2181649dd4956f2767545673ef28d"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Thu Jan 07 10:03:01 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:40 2016 +0000"
      },
      "message": "lib, bgpd, tests: Refactor FILTER_X in zebra.h\n\nlib/zebra.h has FILTER_X #define\u0027s.  These do not belong there.\nPut them in lib/filter.h where they belong.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "7748fdc757a2181649dd4956f2767545673ef28d",
      "tree": "b101c98aefe861b23515b9314b611ace7b87531f",
      "parents": [
        "f3cfc46450cccc5ac035a5a97c5a1a5484205705"
      ],
      "author": {
        "name": "Lou Berger",
        "email": "lberger@labn.net",
        "time": "Wed Feb 10 14:24:00 2016 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:40 2016 +0000"
      },
      "message": "bgpd: Fix graceful restart capability minsize\n\n* bgp_open.c: cap_minsize should be CAPABILITY_CODE_RESTART_LEN for RESTART\n  not 6.\n"
    },
    {
      "commit": "f3cfc46450cccc5ac035a5a97c5a1a5484205705",
      "tree": "3ae512da65c1b4962363c038b8b2c94e27decf65",
      "parents": [
        "d5062d218994885710fe02f516f0c06025b4fc9a"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Thu Jan 07 09:33:28 2016 -0500"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:40 2016 +0000"
      },
      "message": "lib, bgpd: Fixup afi_t to be an enum and cleanup zebra.h\n\nThis code change does two things:\n\n1) Removes ZEBRA_AFI_XXX #defines since they were redundant information\n2) Switches afi_t to an enumerated type so that the compiler\ncan do a bit more compile time checking.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "d5062d218994885710fe02f516f0c06025b4fc9a",
      "tree": "e0d596a5e52b7ec5417bbf410d7c25733222d91c",
      "parents": [
        "6d4742bef722e6fab45fb6eb22ed2c7b7570a2e6"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Dec 02 16:47:43 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Fri Feb 26 14:11:32 2016 +0000"
      },
      "message": "docs: Update bgpd docs, inc. on decision process, and with a section on MED.\n\n* bgpd.texi: Document the -l argument. Update the \u0027BGP decision process\u0027 table\n  to reflect what /actually/ is implemented. Add docs on \u0027compare-routerid\u0027 in\n  the bestpath section.\n\n  Add a section on MED, to highlight the issues it has by default, and to\n  highlight that it is terminally broken for its original purpose in many\n  modern iBGP topologies.\n\n  Mention the potential workarounds and fixes.\n\n* routemap.texi: set an anchor on \u0027set metric\u0027 so bgpd.texi can reference it.\n"
    },
    {
      "commit": "6d4742bef722e6fab45fb6eb22ed2c7b7570a2e6",
      "tree": "5f448656a3f81e684df289e42cc3bd051850e17f",
      "parents": [
        "91b9e8547a7c5697d5d7481f9476778077024019"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Nov 25 17:14:37 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Thu Feb 18 15:54:45 2016 +0000"
      },
      "message": "bgpd: make bgp_info_cmp and multiple-path decision logic more regular\n\n* bgp_route.c: (bgp_info_cmp) This function is supposed to return a\n  preference between the given paths, and does so as binary either or.  When\n  mpath was added, the binary return value was left as is and instead an out\n  parameter \u0027paths_eq\u0027 was added to indicate the mpath-equality case.  It\u0027s\n  a bit odd, as is the resulting logic in the caller.\n\n  Regularise things again by making the function return a strcmp like\n  trinary return value of -1,0,1.  Get rid of the mpath specific arguments,\n  but pass in afi/safi as part of the general context - that plus the\n  (struct bgp *) is enough to access configuration.\n\n  Update the return values.\n\n  The mpath check was testing the IGP metric for equality, even though\n  previous to the mpath changes (and consistent with the behaviour of all\n  the other tests bar the end), equality results in continuing through to\n  the next comparison. Just go back to the previous way - each test finds a\n  preference to return, or continues on to let further tests have a go.\n\n  (bgp_best_selection) Get rid of the (struct bgp_maxpaths_cfg *) arg, we\n  can\u0027t add state for every optional feature to the argument list - they\n  have to look it up as needed. Do pass through the very general afi/safi\n  context though (saves several lookups through the route_node).\n\n  Adjust for the new trinary bgp_info_cmp return value and updated args.\n  Do the mpath clearing/accumulation in one place, in each loop.\n\n  Call to bgp_info_mpath_update similarly gets updated, as there\u0027s no cfg to\n  pass.\n\n  (bgp_process_{rsclient,main}) match bgp_best_selection changes.\n* bgp_mpath.c: (bgp_mpath_is_configured_sort) Helper for whether mpath is\n  enabled by peer sort.\n  (bgp_mpath_is_configured) ditto, generally.\n  (bgp_info_mpath_update) caller no longer has the cfg to pass in, look it\n  up.\n* bgp_mpath.h: Export the above and Match .c changes.\n\nRequires commit:\n \"bgpd: bgp_scan shouldn\u0027t queue up route_nodes with no routes for processing\"\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "91b9e8547a7c5697d5d7481f9476778077024019",
      "tree": "e1cf2b9d29c4dcfd0b3d429551e50f0d6f7848cf",
      "parents": [
        "321d4130a615445d0f49f41c909c92d5401fd5ff"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Tue Dec 01 14:32:11 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Thu Feb 18 11:46:24 2016 +0000"
      },
      "message": "bgpd: bgp_scan shouldn\u0027t queue up route_nodes with no routes for processing\n\n* bgp_nexthop.c: (bgp_scan) There is little point queueing an rn with no routing\n  information for processing.\n* bgp_route.c: (bgp_process) Do nothing on rn\u0027s with no routes. Add an assert\n  for now, to try catch any other cases, but prob should be removed.\n  (bgp_best_selection) rn with no routes \u003d\u003d finish early.\n"
    },
    {
      "commit": "321d4130a615445d0f49f41c909c92d5401fd5ff",
      "tree": "9e1f96ca0986a6c9e990993c46b0657bb33f1c09",
      "parents": [
        "4078f2eb7a3a94ddb30cfd8b76b054e790aab524"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Nov 25 17:14:36 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Feb 10 15:06:18 2016 +0000"
      },
      "message": "tests: add more AS4 capability tests + little fixes for couple of GR test cases.\n\nReviewed-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "4078f2eb7a3a94ddb30cfd8b76b054e790aab524",
      "tree": "3b9d32198d677be63a3587ad6f9ea06506437192",
      "parents": [
        "68ec424eb8557f86d08fcb7ab3c5366cbf3eca0e"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Nov 25 17:14:35 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Feb 10 15:06:17 2016 +0000"
      },
      "message": "bgpd: Check capability falls on right multiple of size, where possible.\n\n* bgp_open.c: (cap_modsizes) Table of multiple a capability\u0027s data size\n  should fall on, if applicable.\n  (bgp_capability_parse) Check the header lengthcap_modsizes should fall on.\n\n  Inspiration from Cumulus bgpd-capability-cleanup.patch patch, with a\n  slightly different approach.\n\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "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"
    },
    {
      "commit": "cc216b7978b038667626afd3f70dda8f70c46e4e",
      "tree": "8d15c0738f2bd73a1a1016c7eba20bbd57c1920f",
      "parents": [
        "a3bc7e9400b214a0f078fdb19596ba54214a1442"
      ],
      "author": {
        "name": "Gautam Kumar",
        "email": "gauta@amazon.com",
        "time": "Mon Oct 26 13:22:12 2015 -0700"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Feb 10 15:06:17 2016 +0000"
      },
      "message": "vtysh: When the config file is close to the boundry of size of buffer vtysh hangs.\n"
    },
    {
      "commit": "a3bc7e9400b214a0f078fdb19596ba54214a1442",
      "tree": "5268048e32b24b2bac3c8a55f41ef25a0b15ff91",
      "parents": [
        "eae18d16fefed42af33e63e096a2889b9c70b9cb"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Jan 27 16:54:45 2016 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Feb 10 15:02:07 2016 +0000"
      },
      "message": "bgpd: Fix VU#270232, VPNv4 NLRI parser memcpys to stack on unchecked length\n\nAddress CERT vulnerability report VU#270232, memcpy to stack data structure\nbased on length field from packet data whose length field upper-bound was\nnot properly checked.\n\nThis likely allows BGP peers that are enabled to send Labeled-VPN SAFI\nroutes to Quagga bgpd to remotely exploit Quagga bgpd.\n\nMitigation: Do not enable Labeled-VPN SAFI with untrusted neighbours.\n\nImpact: Labeled-VPN SAFI is not enabled by default.\n\n* bgp_mplsvpn.c: (bgp_nlri_parse_vpnv4) The prefixlen is checked for\n  lower-bound, but not for upper-bound against received data length.\n  The packet data is then memcpy\u0027d to the stack based on the prefixlen.\n\n  Extend the prefixlen check to ensure it is within the bound of the NLRI\n  packet data AND the on-stack prefix structure AND the maximum size for the\n  address family.\n\nReported-by: Kostya Kortchinsky \u003ckostyak@google.com\u003e\n\nThis commit a joint effort between:\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"
    },
    {
      "commit": "eae18d16fefed42af33e63e096a2889b9c70b9cb",
      "tree": "ca1a184a44902f2d6a9c7dfa92cf50225b8e8cd8",
      "parents": [
        "0d27129ac5fd70b90820e3dde05c085d1a0f63a8"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Sat Nov 21 07:55:42 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Dec 09 08:54:37 2015 -0500"
      },
      "message": "zebra: Fix solaris build issue\n\nThe number of parameters to rib_add_ipv4 has been increased.\nSubmitter of original patch failed to modify solaris code path.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "0d27129ac5fd70b90820e3dde05c085d1a0f63a8",
      "tree": "c0267ab193459bd71f217dcbd0905ad0b9db012e",
      "parents": [
        "64e0ac29ddc43bb5b1a2999a8ebedbdff115e3ca"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Thu Nov 19 07:21:30 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:16:24 2015 -0500"
      },
      "message": "zebra: Fix non usage of VRF_DEFAULT\n\nA vrf_id was being set to 0 instead of VRF_DEFAULT\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "64e0ac29ddc43bb5b1a2999a8ebedbdff115e3ca",
      "tree": "00f5d62575cbc5eb4744179e21bf1ac5ccb63f55",
      "parents": [
        "76764ddcf53fa4840993c395fdf383a47ad61e8e"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@hpe.com",
        "time": "Wed Nov 18 16:00:54 2015 +0000"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:16:24 2015 -0500"
      },
      "message": "bgpd: Implicit updates in BGP may require a withdrawal from zebra RIB\n\n*  J Yu \u003cjackiesyu@hotmail.com\u003e noted a problem with bgpd of routes not\n   having their nexthop updated correctly.\n\n   Martin Winter \u003cmwinter@opensourcerouting.org\u003e pinned this down to the\n   case where a BGP route is updated from one with a valid nexthop to an\n   invalid next-hop, using a test tool. Once the problem occurs, the incorrect\n   route may remain, even after further UPDATEs, so long as the nexthop in the\n   zebra RIB does not match the BGP route\u0027s nexthop.\n\n   Jacqueline Yu then pinned the issue down further to being due to bgpd\n   sending the DELETE for the route to zebra with the new nexthop after a\n   BGP UPDATE updates an existing route, but then is found to be invalid,\n   and zebra not finding the route as it requires a match on all attributes.\n\n* bgp_zebra.c: (bgp_zebra_withdraw) When deleting a prefix, we want it gone.\n  Do not send additional matching attributes like the nexthop, which can\n  only cause incorrect non-matches.\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "76764ddcf53fa4840993c395fdf383a47ad61e8e",
      "tree": "f2c0a5b808f404071ce5c023eb26650671911de9",
      "parents": [
        "642577340cfb7ad66d021ab2b86d72f7cdde03bc"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Fri Nov 20 09:05:46 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:16:19 2015 -0500"
      },
      "message": "isisd, lib: Fix some more compiler warnings\n\nA couple compiler warnings snuck in from the last\nround of work being looked at.  This cleans them up\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "642577340cfb7ad66d021ab2b86d72f7cdde03bc",
      "tree": "981104744f3fb913ec3e5a006199e6810101ab55",
      "parents": [
        "8253b73c3c71d4102c0010f63b59b2829f3b0f90"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Fri Nov 20 08:33:30 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:16:12 2015 -0500"
      },
      "message": "zebra: Cleanup RTADV define\n\nThe RTADV define was not being set correctly or consistently.\nMake the code consistent with our HAVE_IPV6 define.\n\nIf the user wants to explicitly turn it off then they should\nrun --disable-rtadv from the configure cli\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "8253b73c3c71d4102c0010f63b59b2829f3b0f90",
      "tree": "8f70ae84df2f54269b632a572dd7a40c11fc0a1c",
      "parents": [
        "812f282cc1b2c69c1d75cfbfe7983725ceaa4b15"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Thu Nov 12 14:24:28 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: make send_lsp more robust\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nTested-by: NetDEF CI System \u003ccisystem@netdef.org\u003e\n"
    },
    {
      "commit": "812f282cc1b2c69c1d75cfbfe7983725ceaa4b15",
      "tree": "fe0c26f4bc1a971ffad9a5795e559f5cb1ebe92f",
      "parents": [
        "80d6b4e3e6358f52e06e576fcd927d0a009d964e"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:33:16 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: fix misleading wording in log\n\nThe changed messages are actually located before transmission is\nattempted. Therefore, the tense is somewhat misleading, especially\nsince transmission may not always succeed.\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "80d6b4e3e6358f52e06e576fcd927d0a009d964e",
      "tree": "9425515af94f4a99300e2b47bab2b2ec3bc2ea14",
      "parents": [
        "e28718a8bffe0353691a2a7b2643bbeb2657fd66"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "nobody@nowhere.ws",
        "time": "Tue Nov 10 18:33:15 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: handle lsp confusion (ISO/IEC 10589:2002 7.3.16.2)\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "e28718a8bffe0353691a2a7b2643bbeb2657fd66",
      "tree": "8189979c8ed5e1889adde27ec8e4c52c457d8b4b",
      "parents": [
        "cb32a19d143a21f31a13aec83415f27d9daa6a27"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:33:14 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: fix IPv6 mask application\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "cb32a19d143a21f31a13aec83415f27d9daa6a27",
      "tree": "a7605b641ddcb155fbbdc4e6eabbd6de128be49d",
      "parents": [
        "ec87416a1048d547c514b535c15616f9ed932a62"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:33:13 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: show interface\u0027s ipv6 addreses\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "ec87416a1048d547c514b535c15616f9ed932a62",
      "tree": "3d967181e81e6a9ca0f7b9633f6844d7f6338e6e",
      "parents": [
        "acf9865f7fcec6a8d47df6ed7946a5e8ca398918"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:33:12 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: provide more detailed log for failed address removal\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "acf9865f7fcec6a8d47df6ed7946a5e8ca398918",
      "tree": "fac7d9ce2d2b6d984bde675641556e5063e8f655",
      "parents": [
        "9dfcca6122c9f4f3642241ff50029d7669af3999"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Thu Nov 12 14:24:22 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: add support to import routes from other protocols\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "9dfcca6122c9f4f3642241ff50029d7669af3999",
      "tree": "a5429f803a21a5caf2d9c466cf27e59e29ca2662",
      "parents": [
        "61010c33fd7bf3d923c5406656c0672f0336b179"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:32:11 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: fix assertion in LSP refresh timer calculation\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "61010c33fd7bf3d923c5406656c0672f0336b179",
      "tree": "9da23e8d078e328152567254304e189435fec49d",
      "parents": [
        "80a8f72654631fe00f787c73515dc7d064251adc"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:43:34 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:50 2015 -0500"
      },
      "message": "isisd: add a slight delay to lsp_regenerate_schedule\n\nisisd implements a holdoff interval and will refrain from regenerating\nan lsp if the difference between the current time and its last refresh\nis less than the holdoff interval. Instead, it will schedule a timer\nto regenerate the lsp after the holdoff interval has passed.\n\nThis implementation has one disadvantage in the case where there is a\nsuccession of calls to lsp_regenerate_schedule. In such a case, the\nfirst call will trigger an immediate regeneration of the lsp, while the\nother calls will only schedule the regeneration timer. This leads to\ncases where it takes holdoff interval time for information to propagate,\njust because the information was only available e.g. at the second call\nof lsp_regenerate_schedule in such a succession of calls.\n\nBy not immediately regenerating an lsp if the last generation time\nis sufficiently long ago, but instead scheduling the regeneration with a\nvery small delay, we allow all information from such a succession of\ncalls to be considered.\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "80a8f72654631fe00f787c73515dc7d064251adc",
      "tree": "ea9c55d486d2472d85187f48485cc3a6ba7b00df",
      "parents": [
        "749e87a0731ae53cf73af507afb63bab3f8e937f"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Thu Nov 12 14:21:47 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: add a debug mode that traces LSP construction\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "749e87a0731ae53cf73af507afb63bab3f8e937f",
      "tree": "a05052f707c85c9e3dc7fbfcb1e51c2541b40e6e",
      "parents": [
        "f1fc1db703c34dbeb9639c4f6ebfb096cdc3fc62"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:21:44 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: purge on correct level\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "f1fc1db703c34dbeb9639c4f6ebfb096cdc3fc62",
      "tree": "8872bb840dceafa88515afc6f13af22cc3f23ad5",
      "parents": [
        "7324ae1f0daa5537dbcfded208707581b2b36335"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "nobody@nowhere.ws",
        "time": "Tue Nov 10 18:43:31 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: allow to adjust lsp-mtu\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "7324ae1f0daa5537dbcfded208707581b2b36335",
      "tree": "6ddfcdf2de5c3961ede6a9fffb62cf1221a0e5d9",
      "parents": [
        "912aac4f670ffd383b757995914f4d1b5e7596aa"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:04:48 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: initialize circuit to match area is_type\n\nNew circuits should be initialized to match the is_type\nof their area. Also add an additional check to make sure\nthat no IIHs are sent for levels which are not enabled.\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "912aac4f670ffd383b757995914f4d1b5e7596aa",
      "tree": "7b7e39d5b7c06d424554164e53a0a7e6ec3c2c28",
      "parents": [
        "f35169ecdb481ca1e176cbb234b5294b2ca901a7"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:04:47 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: do remove ipv6 routes from Zebra\n\nWe can abort isis_zebra_route_del_ipv6 if the route in question has\nISIS_ROUTE_FLAG_ZEBRA_SYNCED unset, meaning it\u0027s not in the kernel.\nAborting the function if the flag is set prevents us from removing\nany routes.\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "f35169ecdb481ca1e176cbb234b5294b2ca901a7",
      "tree": "2e3121c1bce6685dc50a438443b32fec4d9fbd05",
      "parents": [
        "b461630bed1a0ed33c3a38fc485caf826ff05ce9"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Thu Nov 12 14:09:08 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: don\u0027t corrupt memory for long hostnames\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "b461630bed1a0ed33c3a38fc485caf826ff05ce9",
      "tree": "36ff7fcdbcaf5f82275e008e9e101f5d07d09972",
      "parents": [
        "390f16ee4e506f782aa48077cc8318e6fdcf4a5c"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "nobody@nowhere.ws",
        "time": "Tue Nov 10 18:04:45 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: fix a typo in a log message\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "390f16ee4e506f782aa48077cc8318e6fdcf4a5c",
      "tree": "a7f84ab45aa06efa9609c74b507892f944bc26d4",
      "parents": [
        "77277a140984aa78756cbf363606a324c84113db"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:04:44 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: remove superfluous checks after XMALLOC etc.\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\n"
    },
    {
      "commit": "77277a140984aa78756cbf363606a324c84113db",
      "tree": "15a7b927aa663d18883c6f22fd586fe86f34f8d2",
      "parents": [
        "abfd40d68202882696260617729518a6d2c99302"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "nobody@nowhere.ws",
        "time": "Tue Nov 10 18:04:43 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "isisd: annotate some function arguments with const\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "abfd40d68202882696260617729518a6d2c99302",
      "tree": "40b0c4b62c079adce8692a3b078b081e2facbdb2",
      "parents": [
        "dbe99e0c407bcb383d0be0c0010fefccc5b46866"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:04:42 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:49 2015 -0500"
      },
      "message": "lib: don\u0027t have log functions change errno\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "dbe99e0c407bcb383d0be0c0010fefccc5b46866",
      "tree": "db2828cebc59de453dde7061539d9140fadec17b",
      "parents": [
        "76fbc64c5d82c6f540cb4a1ac855f9f098fa6c5f"
      ],
      "author": {
        "name": "Alexis Fasquel",
        "email": "alexis@pch.net",
        "time": "Mon Nov 16 13:55:16 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:46 2015 -0500"
      },
      "message": "bgpd: Update dump to allow Extended Time Format\n\nAllow the bgp dump functionality to handle the Extended Time format\nas specified in RFC 6396.\n\nFixes a segmentation fault with multiple dump rules as well.\n\nSigned-off-by: Alexis Fasquel \u003calexis@pch.net\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "76fbc64c5d82c6f540cb4a1ac855f9f098fa6c5f",
      "tree": "ce0d45193a3924fd23851ff81210beb320cf0afb",
      "parents": [
        "1ca8d40f996c0760a1a8931f54044dd7ca9e3f9c"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 18:04:41 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:40 2015 -0500"
      },
      "message": "lib: add function to get precise remaining time of timer thread\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "1ca8d40f996c0760a1a8931f54044dd7ca9e3f9c",
      "tree": "df3274ac9d9d3731894cd5123eb8118ff6a7d8f5",
      "parents": [
        "c1900e09a7fdd70437f3ba0329868f1eee3f5a1a"
      ],
      "author": {
        "name": "Christian Franke",
        "email": "chris@opensourcerouting.org",
        "time": "Tue Nov 10 17:45:03 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "ripd, isisd: fix warnings that make the build fail\n\nThese issues have been found by running buildtest.sh\nusing GCC 5.2.0 and Clang 3.7.0\n\nFixes pointer checks that can never be null\n\nSigned-off-by: Christian Franke \u003cchris@opensourcerouting.org\u003e\nTested-by: NetDEF CI System \u003ccisystem@netdef.org\u003e\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "c1900e09a7fdd70437f3ba0329868f1eee3f5a1a",
      "tree": "5f1032936f4413f7dc12935eabbdf62f940ffd12",
      "parents": [
        "949b719eac0c8b51c73f144eb035fab27a16c2a6"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:40 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: Fix change of distance on ipv6 route creating duplicate routes\n\nIf you enter:\n\nipv6 route 2002:44:44:44::44/128 swp1 4\nipv6 route 2002:44:44:44::44/128 swp1 99\n\nYou get:\n\nhost-111# show ipv6 route\nCodes: K - kernel route, C - connected, S - static, R - RIPng,\nO - OSPFv6, I - IS-IS, B - BGP, A - Babel, T - Table,\n\u003e - selected route, * - FIB route\nS 2002:44:44:44::44/128 [99/0] is directly connected, swp1\nS\u003e* 2002:44:44:44::44/128 [4/0] is directly connected, swp1\n\nThis problem is fixed in the ipv4 code path.  Copying the same\ncode from the ipv4 into the ipv6 code path fixes the issue.\n\nWith the fix:\n\nhost-111(config)# ipv6 route 2002:44:44:44::44/128 swp1 4\nhost-111(config)# do show ipv6 route\nCodes: K - kernel route, C - connected, S - static, R - RIPng,\n       O - OSPFv6, I - IS-IS, B - BGP, A - Babel, T - Table,\n       \u003e - selected route, * - FIB route\n\nS\u003e* 2002:44:44:44::44/128 [4/0] is directly connected, swp1\nC * fe80::/64 is directly connected, swp1\nC\u003e* fe80::/64 is directly connected, eth0\nhost-111(config)# ipv6 route 2002:44:44:44::44/128 swp1 99\nhost-111(config)# do show ipv6 route\nCodes: K - kernel route, C - connected, S - static, R - RIPng,\n       O - OSPFv6, I - IS-IS, B - BGP, A - Babel, T - Table,\n       \u003e - selected route, * - FIB route\n\nS\u003e* 2002:44:44:44::44/128 [99/0] is directly connected, swp1\nC * fe80::/64 is directly connected, swp1\nC\u003e* fe80::/64 is directly connected, eth0\nhost-111(config)#\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "949b719eac0c8b51c73f144eb035fab27a16c2a6",
      "tree": "ca22748a46ab77ab04354d13890335a3bcb690a1",
      "parents": [
        "a979ab70e0ec51f3cf779edae509f3c52be0b0f4"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:39 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: Combine static_uninstall_ipv[4|6] into one function\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "a979ab70e0ec51f3cf779edae509f3c52be0b0f4",
      "tree": "f81b6472598e824ea37e3f17e1dd8b167044fbeb",
      "parents": [
        "9bcdd1a252ba84424eb06e84adf7fb48ae66ce1f"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:38 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: combine static_ipv[4|6]_nexthop_same into one function\n\nCombine the static_ipv[4|6]_nexthop_same into static_nexthop_same.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "9bcdd1a252ba84424eb06e84adf7fb48ae66ce1f",
      "tree": "e604d71dcc41c9449d91c6d85c732320d6a112ec",
      "parents": [
        "0d955affd51df42dd5ae24b0d41edd992fb59a78"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:37 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: Combine static_install_ipv[4|6]\n\nCombine the static_install_ipv[4|6] function calls into\nstatic_install_route.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "0d955affd51df42dd5ae24b0d41edd992fb59a78",
      "tree": "8cdf0f263b5c9950c598e6ef2908efbb55004845",
      "parents": [
        "d4c27d656d072fbd81003a71c4f3391c96852c60"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:36 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: Remove HAVE_IPV6 from rib.h and zebra_rib.c\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "d4c27d656d072fbd81003a71c4f3391c96852c60",
      "tree": "27f40829775ca271f6a7d7b5031284b264c0f479",
      "parents": [
        "b11f3b54c842117e22e2f5cf1561ea34eee8dfcc"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 04 13:26:35 2015 -0500"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: Collapse struct static_ipv[4|6] into struct static_route\n\nThe \u0027struct static_ipv4\u0027 and \u0027struct static_ipv6\u0027 structures\nare essentially the same.  Collapse them into one data structure\n\u0027struct static_route\u0027.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "b11f3b54c842117e22e2f5cf1561ea34eee8dfcc",
      "tree": "c31f9893baa2a05db24ea72d1370fb6b11f59c20",
      "parents": [
        "7eb6136b2732d4782360f9f376336c6d4f667ff0"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Mon Nov 02 16:50:07 2015 +0200"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: implement per-route mtu handling\n\nThis commits allow overriding MTU using netlink attributes on\nper-route basis. This is useful for routing protocols that can\nadvertice prefix specific MTUs between routers (e.g. NHRP).\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "7eb6136b2732d4782360f9f376336c6d4f667ff0",
      "tree": "5e77b44139cf542a18a949d1204ace4316b474f1",
      "parents": [
        "929a26a7cf80b2df9981595e6bcfcfc4a970052a"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Mon Nov 02 16:50:05 2015 +0200"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "zebra: make ZEBRA_FLAG_CHANGED internal status\n\nThis flag is used internally in zebra only. And it makes no sense\nto expose it over the zclient API, as having it set from client\ncould corrupt the internal state.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\nAcked-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "929a26a7cf80b2df9981595e6bcfcfc4a970052a",
      "tree": "7be5a0c2750044002a9577e85a2736248aa48d7e",
      "parents": [
        "0d7435f2138955b4b8aa9044eefbaff31ec33248"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Oct 28 19:59:30 2015 -0400"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:10 2015 -0500"
      },
      "message": "lib: Memory reporting fails over 2GB\n\nThe old style mallinfo() function uses an \u0027int\u0027 to\nreport memory usage data to the program.  Unfortunately\nmodern architectures can chew through 2gb of memory like a\nbuzz saw hitting some warm butter, especially in the case\nof a memory leak or memory fragmentation.\n\nWhen a daemon uses more than 2gb of memory, just indicate it\u0027s\ngotten large and we don\u0027t know anymore.\n\nPre-change behavior:\nRobot-1# show memory\nSystem allocator statistics:\nTotal heap allocated: 16777216 TiB\nHolding block headers: 1288 KiB\nUsed small blocks: 0 bytes\nUsed ordinary blocks: 535 MiB\nFree small blocks: 768 bytes\nFree ordinary blocks: 16777216 TiB\nOrdinary blocks: 266107\nSmall blocks: 24\nHolding blocks: 2\n\nPost-change behavior:\nRobot-1# show memory\nSystem allocator statistics:\n  Total heap allocated:  1572 KiB\n  Holding block headers: \u003e 2GB\n  Used small blocks:     0 bytes\n  Used ordinary blocks:  1443 KiB\n  Free small blocks:     32 bytes\n  Free ordinary blocks:  129 KiB\n  Ordinary blocks:       2\n  Small blocks:          1\n  Holding blocks:        2\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "0d7435f2138955b4b8aa9044eefbaff31ec33248",
      "tree": "a7f3583dc4dbb582aa16fadc259241a661c6e8de",
      "parents": [
        "5a2a1ec18c89daec5de6690a9b0f47c0d11a0f2d"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton76@gmail.com",
        "time": "Thu Oct 22 11:35:20 2015 +0300"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:12:09 2015 -0500"
      },
      "message": "bgpd: Add support for timer commands with peer-group syntax\n\nThe peer-groups parser is missing advertisement-interval and \u0027timers connect\u0027\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "5a2a1ec18c89daec5de6690a9b0f47c0d11a0f2d",
      "tree": "a824c25e85d8d5be9690524ff6061293b5f56315",
      "parents": [
        "0edba8b6ad9c83fa0a3cc58765fe9f123f4109ac"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Thu Oct 22 11:35:18 2015 +0300"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:18 2015 -0500"
      },
      "message": "bgpd: update rtt on soft clear\n\nrtt is calculated dynamically by the kernel. Refresh it on\nsoft clear.\n\nFixes: ef757700d0 \"bgpd: allow using rtt in route-map\u0027s set metric\"\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "0edba8b6ad9c83fa0a3cc58765fe9f123f4109ac",
      "tree": "52e0410279dc9b20ba0bc8453e0e0c1f72e081cb",
      "parents": [
        "983525e8b560fc44d2214ca3f6d72af809b6ebd9"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Thu Oct 22 11:35:17 2015 +0300"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:18 2015 -0500"
      },
      "message": "bgpd: check rtt later after the real peer is known\n\nOPEN message handler moves the connection from the temporary\n\"struct peer\" (used to accept it) to the real \"struct peer\" based\non the configuration. RTT needs to be updated only to the real\nstruct peer, and this patch moves the RTT query to point where\nrealpeer is known.\n\nFixes: ef757700d0 \"bgpd: allow using rtt in route-map\u0027s set metric\"\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "983525e8b560fc44d2214ca3f6d72af809b6ebd9",
      "tree": "e746b161aa9266c270d80e2a51e01e49dad87e44",
      "parents": [
        "6d853c43d9dd315eb42211150b7a4a43bae4cb62"
      ],
      "author": {
        "name": "Timo Teräs",
        "email": "timo.teras@iki.fi",
        "time": "Thu Oct 22 11:35:16 2015 +0300"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:18 2015 -0500"
      },
      "message": "zebra: fix rtadv detection\n\nThe GLIBC macro tests were just plain wrong. Glibc 2.1 is ancient\nand the support should be detected via configure.ac test, not\nmacro test. Build with HAVE_RTADV but !RTADV is broke after vrf,\nso for now, just define RTADV always if HAVE_RTADV is there.\n\nSigned-off-by: Timo Teräs \u003ctimo.teras@iki.fi\u003e\n"
    },
    {
      "commit": "6d853c43d9dd315eb42211150b7a4a43bae4cb62",
      "tree": "cc5f6ab4037c4221b735a3ab483a8548b2f0ab88",
      "parents": [
        "bf99b420a57b7c5bf44c8ab528d0a2e416b66d81"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Oct 21 16:13:51 2015 -0400"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:18 2015 -0500"
      },
      "message": "pimd: Limit pim hello log messages\n\npimd was outputting allot of data surrounding pim hello packets.\nIn addition the debugging was inconsistent and not all turned\non via \u0027debug pim packet hello\u0027.\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "bf99b420a57b7c5bf44c8ab528d0a2e416b66d81",
      "tree": "1e44abc69995f5210cc7ddb1cfb8f6f29406db87",
      "parents": [
        "c8af680df5beb613fd50c265773a6beb0f1768c9"
      ],
      "author": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Oct 21 10:00:47 2015 -0400"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:18 2015 -0500"
      },
      "message": "bgpd: Fix bgp_btoa to compile\n\nbgp_btoa was abandoned at some point in time in the past.\nThis commit gets it to compile and to be added to /usr/bin.\n\nAt this point in time no work has done for \u0027correctness\u0027 of execution\n\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "c8af680df5beb613fd50c265773a6beb0f1768c9",
      "tree": "e46da907fe4b493085d8e4bcb51d775cc32ef05b",
      "parents": [
        "363c903435b154e989f0544d12d4ac8d50174c0b"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:56:44 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:14 2015 -0500"
      },
      "message": "lib: Add zlog_hexdump() for debugging\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\nSigned-off-by: Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "363c903435b154e989f0544d12d4ac8d50174c0b",
      "tree": "3efcda7bc9e934ea17f2787a9f0ea9d59738ebea",
      "parents": [
        "92e62e06ba9e03c4603538b3138298b274e3c167"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:54 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:10 2015 -0500"
      },
      "message": "bgpd: crash from not NULLing freed pointers\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n\nThere was a crash from not NULLing out peer-\u003ehostname but I cleaned\nup a bunch of other suspect ones as well.\n"
    },
    {
      "commit": "92e62e06ba9e03c4603538b3138298b274e3c167",
      "tree": "97cddcb06259dfd27ac7e46eae78ba963bd33d54",
      "parents": [
        "f89b09be92bed03b1e5add55dc14ef92e94c52e1"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:53 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:06 2015 -0500"
      },
      "message": "ospfd: Lower the default OSPF spf timers to \u00270 50 5000\u0027\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "f89b09be92bed03b1e5add55dc14ef92e94c52e1",
      "tree": "a9662e2a506a8377b53864d2ea99c5c71978e5e0",
      "parents": [
        "8e644534b4d20dde07306700be0503d09d30a16e"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:52 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:11:01 2015 -0500"
      },
      "message": "bgpd: Lower BGP\u0027s default keepalive/holdtime to 3s/9s\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "8e644534b4d20dde07306700be0503d09d30a16e",
      "tree": "ad52e0dd0c99f32f6d04f32eaee017794f1b711d",
      "parents": [
        "c37b9bccdcc1266f52e50fa3e5a8dc81086c3fe7"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:51 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:10:58 2015 -0500"
      },
      "message": "bgpd: Remove BGP_ERROR_START_TIMER, it was no longer used\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "c37b9bccdcc1266f52e50fa3e5a8dc81086c3fe7",
      "tree": "e1aa8b92d71d434c4b4ca45eebe2089028ce7098",
      "parents": [
        "57fcfda56ad091a6850e190f5788361bf921699e"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:50 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:10:53 2015 -0500"
      },
      "message": "bgpd: Enable \"bgp log-neighbor-changes\" by default\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "57fcfda56ad091a6850e190f5788361bf921699e",
      "tree": "ff31b969ae0565268ff15b71b6e0083dc6d28873",
      "parents": [
        "3ff77fe62ecdabc01f576de8c4e5d78d16e3e436"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:49 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:10:45 2015 -0500"
      },
      "message": "bgpd: Do not allow a timers connect of 0, this can hammer the CPU\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "3ff77fe62ecdabc01f576de8c4e5d78d16e3e436",
      "tree": "597e8e707b0ce9d1f919741f868d15a560548527",
      "parents": [
        "f822ad4326e8b279e028b8b2ca2282475b5e27de"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:48 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:10:42 2015 -0500"
      },
      "message": "bgpd: Remove BGP\u0027s asorig timer, it is no longer used\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "f822ad4326e8b279e028b8b2ca2282475b5e27de",
      "tree": "c8ffb4dd4af36d59d8e0f8901f5b11f81844c3c1",
      "parents": [
        "e56aab94a615a2b676473fbd09145b444a348029"
      ],
      "author": {
        "name": "Daniel Walton",
        "email": "dwalton@cumulusnetworks.com",
        "time": "Wed Oct 21 06:42:47 2015 -0700"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Tue Dec 08 14:10:29 2015 -0500"
      },
      "message": "bgpd: Lower the default \u0027timers connect\u0027 in BGP to 10 seconds\n\nSigned-off-by: Daniel Walton \u003cdwalton@cumulusnetworks.com\u003e\nReviewed-by:   Donald Sharp \u003csharpd@cumulusnetworks.com\u003e\n"
    },
    {
      "commit": "e56aab94a615a2b676473fbd09145b444a348029",
      "tree": "82945742e1b8386f8faf12ac4f26e8fc0403a15c",
      "parents": [
        "ffe794426af2b142ecfed7021d34d8f868857219"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Tue Oct 20 16:14:56 2015 +0100"
      },
      "committer": {
        "name": "Donald Sharp",
        "email": "sharpd@cumulusnetworks.com",
        "time": "Wed Nov 25 11:36:26 2015 -0500"
      },
      "message": "doc: Add \u0027OSPF Fundamentals\u0027 section to OSPF docs\n\n* ospf_fundamentals.texi: New section explaining the fundamentals of OSPF\n  for system admins, to help them debug their networks.\n* {Makefile.am,ospfd.texi}: include and build previous\n\nConflicts:\n\tdoc/Makefile.am\n"
    },
    {
      "commit": "ffe794426af2b142ecfed7021d34d8f868857219",
      "tree": "4fdc504cf91226dc257acd0a478cab9e324c476d",
      "parents": [
        "283596fd6d49a5b2861a6923db9a88628ef0eca4"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul@jakma.org",
        "time": "Thu Oct 29 14:24:13 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Thu Oct 29 14:24:13 2015 +0000"
      },
      "message": "pimd: Fix size_t zlog_err format string warning\n\n* fc1c114aa / \"pimd: Fix warning\", the size_t arg should have a %zu format.\n"
    },
    {
      "commit": "283596fd6d49a5b2861a6923db9a88628ef0eca4",
      "tree": "1b461a1fea8840efaafd1250f729831be91fea9f",
      "parents": [
        "be62b17c736ea06181f2788e3011066830555610",
        "fc1c114aab24fe47bc6a1976c1c602d507fa4e69"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul@jakma.org",
        "time": "Wed Oct 28 14:25:06 2015 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Wed Oct 28 14:25:06 2015 +0000"
      },
      "message": "Merge \u0027patch-tracking/4/proposed/netdef-solaris\u0027 into accepted\n"
    },
    {
      "commit": "be62b17c736ea06181f2788e3011066830555610",
      "tree": "ff751d9dcacd29edffff57b82f56a13247c9575a",
      "parents": [
        "056f3760cd311faf088d6f5fe06498960788c8c7"
      ],
      "author": {
        "name": "Michael Zingg",
        "email": "michael.zingg@zhaw.ch",
        "time": "Fri Oct 26 11:18:19 2012 +0200"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul@quagga.net",
        "time": "Tue Oct 27 11:00:30 2015 +0000"
      },
      "message": "isisd: Fix LSPs not being regenerated after adjacency change\n\nIn isisd LSP\u0027s are not regenerated after a change in adjacency if\nlsp-gen-interval has expired.\nI have tested this on Debian 6.0 with zebra and level1 isisd with point\nto point links. This problem is also listed in Test ISIS-18.3 on the\nopensourcerouting.org wiki:\nhttp://confluence.isc.org/display/osr/ANVL+ISIS+Compliance+Test+Plan\nhttp://confluence.isc.org/display/osr/ANVL+ISIS+Results\n"
    }
  ],
  "next": "056f3760cd311faf088d6f5fe06498960788c8c7"
}
