)]}'
{
  "log": [
    {
      "commit": "d3f0d6210119ff520c286c89bd614838cc6cbf8e",
      "tree": "dce792feac0f39ebeb463e41224f419258e6a81d",
      "parents": [
        "239389ba30e21de22e6c2dd708f44ece11b5807a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 05 15:27:15 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 05 15:27:15 2004 +0000"
      },
      "message": "2004-05-05 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * ospf_packet.c:  (ospf_associate_packet_vl) cleanup, move\n          some of the checks up to ospf_read, return either a\n          virtual link oi, or NULL.\n          (ospf_read) Cleanup, make it responsible for checks. Remove\n          the nbr lookup - moved to ospf_neighbor. Adjust all nbr\n          lookups to use new wrappers exported by ospf_neighbor.\n        * ospf_neighbor.h: Add ospf_neigbour_get and ospf_nbr_lookup.\n        * ospf_neighbor.c: (ospf_neigbour_get) Index ospf_interface\n          neighbour table by router-id for virtual-link ospf_interfaces,\n          not by peer_addr (which breaks for asymmetric vlinks)\n          (ospf_nbr_lookup) add a wrapper for nbr lookups to deal with\n          above.\n"
    },
    {
      "commit": "6898008484a562ff5bae178a6fb0bd885fe8b1e5",
      "tree": "27797ca6532ca0ef85f538ac8f3070639e579229",
      "parents": [
        "1ef74ef70bdab672458c4d1e4cea24197066c0af"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Mar 25 05:07:42 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Mar 25 05:07:42 2003 +0000"
      },
      "message": "2003-03-25 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* sync to latest zebra CVS\n\t* spec file: updated and added define for ospf-api/client\n\nNB: OSPF-API has been broken by the zebra.org changes, which\nhas added struct ospf * as a new arg to many functions\n"
    },
    {
      "commit": "2d59836a4fb16e2471560a47da7e5f75779c5807",
      "tree": "619901a67086c8eca741eee4e8b6b9810a3d86b9",
      "parents": [
        "e04ab74d17b4f3456bd3eeefe2043584431b4ea2"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 17 23:48:42 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 17 23:48:42 2003 +0000"
      },
      "message": "From endo@suri.co.jp Fri Jan 17 23:36:30 2003\nDate: Fri, 20 Dec 2002 17:58:43 +0900\nFrom: Masahiko Endo \u003cendo@suri.co.jp\u003e\nReply-To: zebra@zebra.org\nTo: zebra@zebra.org\nCc: kunihiro@zebra.org\nSubject: [zebra 16824] [PATCH] nsm_kill_neighbor\n\n    [ The following text is in the \"ISO-2022-JP\" character set. ]\r\n    [ Your display is set for the \"ISO-8859-1\" character set.  ]\r\n    [ Some characters may be displayed incorrectly. ]\n\nHi Ishiguro-san,\n\nHere is my problem analysis against the case that the ospfd crashes\nwhen an interface is brought down.\n\nWhen the ospfd receives a ZEBRA message \"ZEBRA_INTERFACE_DOWN\" from\nzebra daemon, the ospfd performs bunch of ospf-interface cleanup for\nthe notified zebra-interface.\nThere are cases that neighbor instance \"nbr\", which will be removed\nafterward, may scheduled in the NSM thread event queue. And when the\nNSM event thread is fired, dereference for this already freed \"nbr\"\npointer causes SIGSEGV.\nPlease take a look at following timeline of processing sequences.\n"
    }
  ]
}
