)]}'
{
  "log": [
    {
      "commit": "78edbf8f4d3281e579551931ce1876f6d51f79c9",
      "tree": "66dfabf4ffc50e7aa1f40033f21b81fceed774c7",
      "parents": [
        "13766da4e4ab3061a585808cda78545c7097d006"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Feb 13 20:18:50 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Feb 13 20:18:50 2003 +0000"
      },
      "message": "bump up version num in spec file\n"
    },
    {
      "commit": "13766da4e4ab3061a585808cda78545c7097d006",
      "tree": "85c63cbaf4334d1d90030751eeb03422217c760e",
      "parents": [
        "420df43a6dab33b80d851798aa29f05d5ff01357"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Feb 07 14:46:23 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Feb 07 14:46:23 2003 +0000"
      },
      "message": "Sync to latest Zebra CVS\n"
    },
    {
      "commit": "420df43a6dab33b80d851798aa29f05d5ff01357",
      "tree": "ab31d0e78b1eb720124821967476b312bc0042ec",
      "parents": [
        "37163d6d0cc49d34a0ea6c0de3184cda93efb419"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 20:30:39 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 20:30:39 2003 +0000"
      },
      "message": "small update\n"
    },
    {
      "commit": "37163d6d0cc49d34a0ea6c0de3184cda93efb419",
      "tree": "96bbe047e20abc715894d42652430757daa62758",
      "parents": [
        "7d7ddde299bddebb48d1e98a9be04008eaa5baad"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 18:40:56 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 18:40:56 2003 +0000"
      },
      "message": "Merge to zebra.org CVS 20030203 16:30GMT\n"
    },
    {
      "commit": "7d7ddde299bddebb48d1e98a9be04008eaa5baad",
      "tree": "b468284bd8c7476e6483a7ca065f397a1a948df4",
      "parents": [
        "7d95c611f615aad92ac2e5cce787bad737f4e6bd"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 16:31:16 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 16:31:16 2003 +0000"
      },
      "message": "Initial revision\n"
    },
    {
      "commit": "7d95c611f615aad92ac2e5cce787bad737f4e6bd",
      "tree": "3395403396d610de90877579af71413d2ae5a592",
      "parents": [
        "7cfb15fe15a419489cb82192d19344efc7871274"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 27 12:00:55 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 27 12:00:55 2003 +0000"
      },
      "message": "Revert comment out of:\n if (ospf_debug_packet \u0026 OSPF_DEBUG_RECV)\nwhich was causing unconditional ospf_ip_header_dump (ibuf).\n(introduced with kevin millers patch)\n"
    },
    {
      "commit": "7cfb15fe15a419489cb82192d19344efc7871274",
      "tree": "4bdab680013a1c91ee8602ddbade093ec3513af5",
      "parents": [
        "5087df5683a810ee919d5e957cd210223b5f31e7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 27 11:57:46 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 27 11:57:46 2003 +0000"
      },
      "message": "revert unchecked debug info generated by Kevin Miller\u0027s patch\n"
    },
    {
      "commit": "5087df5683a810ee919d5e957cd210223b5f31e7",
      "tree": "c0f216eaac95a6e6fc37664a5ed934461d9fb305",
      "parents": [
        "570f7598ebf2e2107ac9976d4d9def22072c5b02"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 25 06:56:09 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 25 06:56:09 2003 +0000"
      },
      "message": "Small fix (free integrate_sav) and addition of an ssh command.\n"
    },
    {
      "commit": "570f7598ebf2e2107ac9976d4d9def22072c5b02",
      "tree": "bc8a497e0310d53bd30342f8899758ba1162afb3",
      "parents": [
        "e3d29b5f9e68447a09dec7215f9ad75d3cc17a0a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 25 06:47:41 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 25 06:47:41 2003 +0000"
      },
      "message": "Paul Jakma:\n[zebra 17352] ospf network matching (aka need for peer /32 for PtP)\nchange behaviour of network \u003cprefix\u003e area N statement wrt to PtP.\n"
    },
    {
      "commit": "e3d29b5f9e68447a09dec7215f9ad75d3cc17a0a",
      "tree": "a3e785d2bc78f45c51f5413409bf9eb6a560ed63",
      "parents": [
        "4fc4e7ab47fef3295d0ae40e064fc99478c24e23"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jan 23 18:05:42 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jan 23 18:05:42 2003 +0000"
      },
      "message": "Replace _SC_PAGESIZE with the far more portable getpagesize().\n(needed, eg, for Darwin).\n Kris Foster \u003ckris@krweb.net\u003e\n"
    },
    {
      "commit": "4fc4e7ab47fef3295d0ae40e064fc99478c24e23",
      "tree": "82e0d2dd400ca4bf14138ac484120085244d2d25",
      "parents": [
        "d753e9eec96f03aa02a7648e4279c524c376908d"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:47:09 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:47:09 2003 +0000"
      },
      "message": "Matthew Grant \u003cgrantma@anathoth.gen.nz\u003e\n[zebra 17290] [PATCHES] - Fixes for problems in 0.93b\n\nportfix patch\n"
    },
    {
      "commit": "d753e9eec96f03aa02a7648e4279c524c376908d",
      "tree": "5434dea114f81d8596fc87a619f65c36629b4300",
      "parents": [
        "d4f5031c5c2ca3953d071cfce0a3faa34f9b073d"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:45:50 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:45:50 2003 +0000"
      },
      "message": "Matthew Grant \u003cgrantma@anathoth.gen.nz\u003e\nSubject: [zebra 17290] [PATCHES] - Fixes for problems in 0.93b\n\nAdded ifupstaticfix\n"
    },
    {
      "commit": "d4f5031c5c2ca3953d071cfce0a3faa34f9b073d",
      "tree": "ceb1b9fe0a7fcbfbf63a98b21681bf29c50fef39",
      "parents": [
        "ae936aee9967d48a60986624f5b52fe77ad6fd34"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:26:00 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jan 22 19:26:00 2003 +0000"
      },
      "message": "Update for ospfd docs for \u0027compatible rfc1583\u0027 and \u0027abr-type\u0027.\nChristian Hammers \u003cch@westend.com\u003e\nzebra 17336 and 17335\n"
    },
    {
      "commit": "ae936aee9967d48a60986624f5b52fe77ad6fd34",
      "tree": "7cd81a1c3c097c24b46dbce2f8a6a0fd0d8f490d",
      "parents": [
        "8f7549839bcc22bdb39139dfcea841a1d6fdc6a8"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 20 04:58:21 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 20 04:58:21 2003 +0000"
      },
      "message": "small change to changelog\n"
    },
    {
      "commit": "8f7549839bcc22bdb39139dfcea841a1d6fdc6a8",
      "tree": "d70efe865278d5f5dcd8dbf100faf6501c7c2464",
      "parents": [
        "8fdcfdecd5900d7ffeaff9686c65eb2b9e6beb50"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 20 04:55:51 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 20 04:55:51 2003 +0000"
      },
      "message": "Update Spec file\n"
    },
    {
      "commit": "8fdcfdecd5900d7ffeaff9686c65eb2b9e6beb50",
      "tree": "d979a3c7cb2183f6392d6bb5f91a5743c5d6a7d9",
      "parents": [
        "9a668001507efa0c6a4e80cc2d7db8db93967f68"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jan 19 20:52:55 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jan 19 20:52:55 2003 +0000"
      },
      "message": "Add work around for RFC3021 patch and its problem with certain IPv6 interfaces\naddresses.\n\nIt seems so far that netlink only ever returns IFA_ADDRESS for IPv6 interfaces\nand never IFA_LOCAL, regardless of whether it is PtP or not. Need to investigate\nprecisely how IPv6 and netlink are supposed to behave wrt broadcast vs\nPtP links.\n"
    },
    {
      "commit": "9a668001507efa0c6a4e80cc2d7db8db93967f68",
      "tree": "2d5c08b16f25cdbc895470562efa24289ce338c3",
      "parents": [
        "30b9d89b4d837edd53458c288cdfb610ac30db5c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 23:11:44 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 23:11:44 2003 +0000"
      },
      "message": "update changelog\n"
    },
    {
      "commit": "30b9d89b4d837edd53458c288cdfb610ac30db5c",
      "tree": "84653c86a6deb0849b126dc95e6ab63d13e735dd",
      "parents": [
        "8c559e2ce5e45f8058769c3f9f3a2c8b9f1b8e81"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 22:57:15 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 22:57:15 2003 +0000"
      },
      "message": "Updated spec file\n"
    },
    {
      "commit": "8c559e2ce5e45f8058769c3f9f3a2c8b9f1b8e81",
      "tree": "1ffaf13410bbf2b76523262b422b58eb402bae3b",
      "parents": [
        "e5de4aa13cd9ddf608db2c073781aa5c832dd8c8"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 02:08:50 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 02:08:50 2003 +0000"
      },
      "message": "renamed ports/redhat to redhat/\n"
    },
    {
      "commit": "e5de4aa13cd9ddf608db2c073781aa5c832dd8c8",
      "tree": "c2bcad32c1923bdc449bd64666fa2fd2e4873a46",
      "parents": [
        "9ab6812d1dd27813f3ae01624312edc21c1a0bb6"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 01:46:14 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 01:46:14 2003 +0000"
      },
      "message": "Removed out of date init/redhat.\nports/redhat is current.\n"
    },
    {
      "commit": "9ab6812d1dd27813f3ae01624312edc21c1a0bb6",
      "tree": "0e74ebe8d75aa0217233de3045240579933395eb",
      "parents": [
        "eda031f6f3558239da5ceb196312ff71aa74fef1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 01:16:20 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 01:16:20 2003 +0000"
      },
      "message": "This patch adds Yon\u0027s CLI \u0027walk back up tree\u0027 patch. Following are email\ndescribing original patch and a shorter email describing changes to an\nupdated patch, the one which is applied:\n\nFrom havanna_moon@gmx.net Sat Jan 18 00:37:13 2003\nDate: Mon, 9 Dec 2002 05:32:58 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: \"the list(tm) Zebra\" \u003czebra@zebra.org\u003e\nSubject: [zebra 16671] [PATCH] CLI extensions.\n\nHi,\n\n this patch adds 2 improvements to the CLI (lib/command.c):\n\n#1) When in subconfig mode (router XXX, interface XXX, ...) commands that\nfail for that node are tried on the main CONFIG_NODE. This is great for\nconfiguring interfaces or changing the sub-config mode quickly, without\nthe need to type \u0027exit\u0027 between commands:\n\nospfd(config)# int eth1\nospfd(config-if)# ip ospf cost 9\nospfd(config-if)# ip ospf prio 101\nospfd(config-if)# router ospf\nospfd(config-router)# network 1.1.1.0/24 area 51\nospfd(config-router)# int eth2\nospfd(config-if)# ip ospf authentication message-digest\nospfd(config-if)# ^Z\nospfd#\n\n Is this IOS-like or does IOS try to walk up the tree of config sub-modes\ninstead of directly trying the command on CONFIG_NODE?\n\nCAVEATS: \"?\" and \"TAB\" don\u0027t work.  IIRC IOS doesnt show that help\nneither.\n\nNON-CAVEATS: This wont break much, as config_from_file() already does\ntry a failed command on the parent node of the actual vty-\u003enode. If\nchanging the code to walk the node tree instead of directly trying\nthe command on the ENABLE_NODE the same semantics would be in use\nand no future bugs could creep in.\n\n#2) When in config or subconfig mode use the \"do \" prefix to execute\ncommans of the ENABLE_NODE. \"?\" and \"TAB\" work. The space after the\n\"do\" is needed:\n\nospfd(config-router)# do\u003c?\u003e\n% There is no matched command.\nospfd(config-router)# do \u003c?\u003e\n  clear      Reset functions\n  configure  Configuration from vty interface\n  copy       Copy configuration\n  debug      Debugging functions (see also \u0027undebug\u0027)\n  disable    Turn off privileged mode command\n  end        End current mode and change to enable mode.\n  exit       Exit current mode and down to previous mode\n  help       Description of the interactive help system\n  list       Print command list\n  no         Negate a command or set its defaults\n  quit       Exit current mode and down to previous mode\n  show       Show running system information\n  terminal   Set terminal line parameters\n  who        Display who is on vty\n  write      Write running configuration to memory, network, or terminal\nospfd(config-router)# do sho\u003cTAB\u003e\nospfd(config-router)# do show me\u003cTAB\u003e\nospfd(config-router)# do show memory r\u003cTAB\u003e\nospfd(config-router)# do show memory rip\nRIP structure         :     0\nRIP route info        :     0\nRIP interface         :     0\nRIP peer              :     0\nRIP offset list       :     0\nRIP distance          :     0\nospfd(config-router)# ^Z\nospfd#\n\n\nCAVEATS: I don\u0027t have access to an IOS with this feature, so I implemented\nit from the comments on this mailing list (in fact my personal motivation\nwas to implement feature #1, which I missed on zebra. But #2 sounded like\na nice one to have, and xemacs was already parked on command.c ...).\nIs this IOS-like or are there differences?\n\n I will happily change this patch to mimick IOS or the mailing-list\nconsensus on CLI-usability.\n\nregards,\n yon\n\nFrom havanna_moon@gmx.net Sat Jan 18 01:13:11 2003\nDate: Sat, 11 Jan 2003 23:36:51 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: zebra@zebra.org\nSubject: [zebra 17218] Re: [PATCH] CLI extensions.\n\nHi,\n\n[redacted]\n\n\u003e I prefer the IOS way for the node \"up walking\".\n\n This patch should walk the tree upwards:\n\nbgpd(config)# router bgp 1\nbgpd(config-router)# address-family ipv4 multicast\nbgpd(config-router-af)# access-list 1 remark hola que tal\nbgpd(config)#\n\n I cant test all combinations, so I cant rule out some bugs. I\u0027d love to\nget (long and explicit) bug reports.\n\n\n[redacted]\n"
    },
    {
      "commit": "eda031f6f3558239da5ceb196312ff71aa74fef1",
      "tree": "1c8719ab3e5cbd02166a4e8cc666cf50bdcd09aa",
      "parents": [
        "d7ccae28299c5f56cb65135b59e17a68c6b16cd3"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:39:19 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:39:19 2003 +0000"
      },
      "message": "Finish off merge off CLI extensions, see below for description. Merge should\nbe off:\n\nFrom havanna_moon@gmx.net Sat Jan 18 00:37:13 2003\nDate: Mon, 9 Dec 2002 05:32:58 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: \"the list(tm) Zebra\" \u003czebra@zebra.org\u003e\nSubject: [zebra 16671] [PATCH] CLI extensions.\n\nHi,\n\n this patch adds 2 improvements to the CLI (lib/command.c):\n\n#1) When in subconfig mode (router XXX, interface XXX, ...) commands that\nfail for that node are tried on the main CONFIG_NODE. This is great for\nconfiguring interfaces or changing the sub-config mode quickly, without\nthe need to type \u0027exit\u0027 between commands:\n\nospfd(config)# int eth1\nospfd(config-if)# ip ospf cost 9\nospfd(config-if)# ip ospf prio 101\nospfd(config-if)# router ospf\nospfd(config-router)# network 1.1.1.0/24 area 51\nospfd(config-router)# int eth2\nospfd(config-if)# ip ospf authentication message-digest\nospfd(config-if)# ^Z\nospfd#\n\n Is this IOS-like or does IOS try to walk up the tree of config sub-modes\ninstead of directly trying the command on CONFIG_NODE?\n\nCAVEATS: \"?\" and \"TAB\" don\u0027t work.  IIRC IOS doesnt show that help\nneither.\n\nNON-CAVEATS: This wont break much, as config_from_file() already does\ntry a failed command on the parent node of the actual vty-\u003enode. If\nchanging the code to walk the node tree instead of directly trying\nthe command on the ENABLE_NODE the same semantics would be in use\nand no future bugs could creep in.\n\n#2) When in config or subconfig mode use the \"do \" prefix to execute\ncommans of the ENABLE_NODE. \"?\" and \"TAB\" work. The space after the\n\"do\" is needed:\n\nospfd(config-router)# do\u003c?\u003e\n% There is no matched command.\nospfd(config-router)# do \u003c?\u003e\n  clear      Reset functions\n  configure  Configuration from vty interface\n  copy       Copy configuration\n  debug      Debugging functions (see also \u0027undebug\u0027)\n  disable    Turn off privileged mode command\n  end        End current mode and change to enable mode.\n  exit       Exit current mode and down to previous mode\n  help       Description of the interactive help system\n  list       Print command list\n  no         Negate a command or set its defaults\n  quit       Exit current mode and down to previous mode\n  show       Show running system information\n  terminal   Set terminal line parameters\n  who        Display who is on vty\n  write      Write running configuration to memory, network, or terminal\nospfd(config-router)# do sho\u003cTAB\u003e\nospfd(config-router)# do show me\u003cTAB\u003e\nospfd(config-router)# do show memory r\u003cTAB\u003e\nospfd(config-router)# do show memory rip\nRIP structure         :     0\nRIP route info        :     0\nRIP interface         :     0\nRIP peer              :     0\nRIP offset list       :     0\nRIP distance          :     0\nospfd(config-router)# ^Z\nospfd#\n\n\nCAVEATS: I don\u0027t have access to an IOS with this feature, so I implemented\nit from the comments on this mailing list (in fact my personal motivation\nwas to implement feature #1, which I missed on zebra. But #2 sounded like\na nice one to have, and xemacs was already parked on command.c ...).\nIs this IOS-like or are there differences?\n\n I will happily change this patch to mimick IOS or the mailing-list\nconsensus on CLI-usability.\n\nregards,\n yon\n"
    },
    {
      "commit": "d7ccae28299c5f56cb65135b59e17a68c6b16cd3",
      "tree": "3d1600b10a346ce24af7eac2174bc35d93945f81",
      "parents": [
        "788cdc6d5e7cf2d7fa5d6d0f743432f8f4c7048a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:24:00 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:24:00 2003 +0000"
      },
      "message": "Make vtysh and ipv6 conditional builds in spec file\n"
    },
    {
      "commit": "788cdc6d5e7cf2d7fa5d6d0f743432f8f4c7048a",
      "tree": "387f28ea130b5325aefa2de5358971fb7fcf78ff",
      "parents": [
        "09e4efdcb22ac13af3f6e3a38158871ed140e5e0"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:22:08 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:22:08 2003 +0000"
      },
      "message": "Added RedHat related files, (init, logrotate, pam, rpm spec)\n"
    },
    {
      "commit": "09e4efdcb22ac13af3f6e3a38158871ed140e5e0",
      "tree": "5fa509af429208262d719c04a195f5cd58e49ffa",
      "parents": [
        "2d59836a4fb16e2471560a47da7e5f75779c5807"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:12:02 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:12:02 2003 +0000"
      },
      "message": "Date: Fri, 20 Dec 2002 17:28:45 +0900\nFrom: Masahiko Endo \u003cendo@suri.co.jp\u003e\nReply-To: zebra@zebra.org\nTo: zebra@zebra.org\nCc: kunihiro@zebra.org, yokota@kddlabs.co.jp\nSubject: [zebra 16823] [PATCH] Bugfix and new feature in Opaque-LSA\nhandling.\n\n----- * ----- * ----- * ----- * ----- * ----- * ----- * ----- * ----- * -----\nChanges 2002.12.20\n\n1. Bug fixes\n\n  1.1 When an opaque LSA is being removed from (or added to) the LSDB,\n      it does not mean a change in network topology. Therefore, SPF\n      recalculation should not be triggered in that case.\n      There was an assertion failure problem \"assert (rn \u0026\u0026 rn-\u003einfo)\"\n      inside the function \"ospf_ase_incremental_update()\", because\n      the upper function \"ospf_lsa_maxage_walker_remover()\" called it\n      when a type-11 opaque LSA is removed due to MaxAge.\n\n  1.2 Type-9 LSA is defined to have \"link-local\" flooding scope.\n      In the Database exchange procedure with a new neighbor, a type-9\n      LSA was added in the database summary of a DD message, even if\n      the link is different from the one that have bound to.\n\n2. Feature enhancements\n\n  2.1 Though a \"wildcard\" concept to handle type-9/10/11 LSAs altogether\n      has introduced about a year ago, it was only a symbol definition\n      and actual handling mechanism was not implemented. Now it works.\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"
    },
    {
      "commit": "e04ab74d17b4f3456bd3eeefe2043584431b4ea2",
      "tree": "154168b7aeb6b4e2fbc1fd04e5f2c96870120272",
      "parents": [
        "a895901b3c4e6a061f56be90f5fe9bc78e6e5c2f"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 17 23:47:00 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jan 17 23:47:00 2003 +0000"
      },
      "message": "From havanna_moon@gmx.net Fri Jan 17 23:37:49 2003\nDate: Sat, 11 Jan 2003 23:26:28 +0100 (CET)\nFrom: Yon Uriarte \u003chavanna_moon@gmx.net\u003e\nTo: \"the list(tm) Zebra\" \u003czebra@zebra.org\u003e\nSubject: [zebra 17217] [PATCH] show thread CPU\n\nHi,\n\n a little patch from the \u0027stupid preprocessor tricks\u0027 collection to record\nthread statistics.\n\nUsage: \"show thread cpu [r][w][t][e][x]\"\n\nOutput Fields: self explaining I hope. Type is one of RWTEX for:\n   Read, Write (fd threads), Timer, Event, Execute.\n\n Overhead vs. vanilla zebra: almost nothing. Vanilla CVS zebra already\ncollects thread run times.\n\n\n Caveats: Under linux getrusage has a granularity of 10ms, which is almost\nuseless in this case. Run ./configure, edit config.h and comment out\n\"#define HAVE_RUSAGE\",  this way it will use getimeofday which has a much\nbetter granularity. IMHO this is better, as cooperative threads are\neffectively running during all that wall time (dont care if CPU\nutilization was 3% or 99% during the time the thread was running (an\neffective rusage combined with getimeofday could give that info)).\n\n Maybe someone can give tips for other platforms on API granularity.\n\n\nTODO: change some of the calls to thread_add_$KIND to\nfuncname_thread_add_$KIND with a meaningfull funcname, so users will get a\nbetter idea of what\u0027s going on.\n\nF.ex. (AFAIK):\nospf_spf_calculate_timer -\u003e \"Routes Step 1, areas SPF\"\nospf_ase_calculate_timer -\u003e \"Routes Step 2, externals\"\n\n\n\n Could this be added to the unofficial patch collection?\n\nCould someone with BGP keepalive problems run their bgpd with this patch\nand post the results?\n\n\nTIA, HTH, HAND, regards\n yon\n\n\nExample output:\n--------------------------------\nospfd# show thread cpu\n Runtime(ms)    Invoked Avg uSecs   Max uSecs  Type Thread\n      14.829         31       478         585   T   ospf_ase_calculate_timer\n      82.132       9838         8         291    EX ospf_nsm_event\n       0.029          1        29          29    E  ospf_default_originate_timer\n       0.254          9        28          34   T   ospf_db_desc_timer\n       0.026          7         3          11   T   ospf_wait_timer\n     669.015        523      1279      490696 R     vty_read\n       4.415         45        98         173   TE  ospf_network_lsa_refresh_timer\n      15.026         31       484         588   T   ospf_spf_calculate_timer\n      29.478       1593        18         122    E  ospf_ls_upd_send_queue_event\n       0.173          1       173         173   T   vty_timeout\n       4.173        242        17          58    E  ospf_ls_ack_send_event\n     637.767     121223         5          55   T   ospf_ls_ack_timer\n      39.373        244       161        2691 R     zclient_read\n      12.169         98       124         726    EX ospf_ism_event\n       0.226          2       113         125 R     vty_accept\n     537.776      14256        37        3813  W    ospf_write\n       4.967         41       121         250   T   ospf_router_lsa_timer\n       0.672          1       672         672    E  zclient_connect\n       7.901       1658         4          26   T   ospf_ls_req_timer\n       0.459          2       229         266    E  ospf_external_lsa_originate_timer\n       3.203         60        53         305   T   ospf_maxage_lsa_remover\n     108.341       9772        11          65   T   ospf_ls_upd_timer\n      33.302        525        63        8628  W    vty_flush\n       0.101          1       101         101   T   ospf_router_lsa_update_timer\n       0.016          1        16          16   T   ospf_router_id_update_timer\n      26.970        407        66         176   T   ospf_lsa_maxage_walker\n     381.949      12244        31          69   T   ospf_hello_timer\n       0.114         22         5          14   T   ospf_inactivity_timer\n      34.290       1223        28         310   T   ospf_lsa_refresh_walker\n     470.645       6592        71         665 R     ospf_read\n    3119.791     180693        17      490696 RWTEX TOTAL\nospfd#\n\nbgpd# sh t c TeX\n Runtime(ms)    Invoked Avg uSecs   Max uSecs  Type Thread\n      21.504        476        45          71   T   bgp_keepalive_timer\n      17.784       1157        15         131   T   bgp_reuse_timer\n      29.080        193       150         249   T   bgp_scan\n      23.606        995        23         420    E  bgp_event\n     317.734      28572        11          69   T   bgp_routeadv_timer\n       0.084          1        84          84    E  zlookup_connect\n       0.526          1       526         526    E  zclient_connect\n       1.348         13       103         147   T   bgp_start_timer\n      19.443        142       136         420   T   bgp_connect_timer\n      16.032        772        20          27   T   bgp_import\n     447.141      32322        13         526   TEX TOTAL\nbgpd#\nbgpd# show thread cpu rw\n Runtime(ms)    Invoked Avg uSecs   Max uSecs  Type Thread\n     155.043          7     22149      150659 R     bgp_accept\n     129.638        180       720       53844 R     vty_read\n       1.734         56        30         129 R     zclient_read\n       0.255          2       127         148 R     vty_accept\n      58.483        983        59         340 R     bgp_read\n     171.495      29190         5         245  W    bgp_write\n      13.884        181        76        2542  W    vty_flush\n     530.532      30599        17      150659 RW    TOTAL\nbgpd#\n--------------------------------\n"
    },
    {
      "commit": "a895901b3c4e6a061f56be90f5fe9bc78e6e5c2f",
      "tree": "418911e24e902050f5962d89a6d635da6086c2d1",
      "parents": [
        "8bddafc9d468427b7ff5d0cc80a6cf5827db1045"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:59:26 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:59:26 2002 +0000"
      },
      "message": "update\n"
    },
    {
      "commit": "8bddafc9d468427b7ff5d0cc80a6cf5827db1045",
      "tree": "0a9312a9283af1f430f864c77723661cfeb95ce9",
      "parents": [
        "0efa4d57e3abef27cccdc571b5fb8c226b7b3b64"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:57:32 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:57:32 2002 +0000"
      },
      "message": "\"Masahiko Endo\" \u003c endo @ suri . co . jp \u003e\n- [zebra 15475] - MPLS-TE docs\n"
    },
    {
      "commit": "0efa4d57e3abef27cccdc571b5fb8c226b7b3b64",
      "tree": "c0f9743ff5f3db1d961abf407e57cf6637945a5b",
      "parents": [
        "efa9f8300965d53d11b8a24efbab4b3644af7ff5"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:55:43 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:55:43 2002 +0000"
      },
      "message": "update changelog\n"
    },
    {
      "commit": "efa9f8300965d53d11b8a24efbab4b3644af7ff5",
      "tree": "1f049aaed5fda2835d0a2bf192997b47e8837c50",
      "parents": [
        "f2c806522030d4964b4ca649637a7901751d8496"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:47:59 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:47:59 2002 +0000"
      },
      "message": "change log message fron signed to unsigned decimal\n"
    },
    {
      "commit": "f2c806522030d4964b4ca649637a7901751d8496",
      "tree": "0a33c81dbbf280beb2193144b5b39b703f3ca102",
      "parents": [
        "b92938a7364d220f2ca6d77a5722433159520e02"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:44:27 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:44:27 2002 +0000"
      },
      "message": " Kevin C Miller \u003ckevinm@andrew.cmu.edu\u003e\n[zebra 16681] OSPF NSSA Patches\n"
    },
    {
      "commit": "b92938a7364d220f2ca6d77a5722433159520e02",
      "tree": "084c9f07af5ad9bccf6559b6ed40650027c1a06e",
      "parents": [
        "ab836aab45bb6bea37da3584bb051fc56f1ca827"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:20:42 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:20:42 2002 +0000"
      },
      "message": "Yon Uriarte \u003chavanna_moon@gmx.net\u003e\n[zebra 16671] [PATCH] CLI extensions.\n"
    },
    {
      "commit": "ab836aab45bb6bea37da3584bb051fc56f1ca827",
      "tree": "fd567c6065b4678767bae98b104fc434ff4cbcc7",
      "parents": [
        "00df0c1e80811f3cf5eca0b28e720bf1bcc84a53"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:19:02 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:19:02 2002 +0000"
      },
      "message": "Michal Ludvig \u003cmichal@logix.cz\u003e\n[zebra 16525] PATCH: Bugfixes for KAME systems\n"
    },
    {
      "commit": "00df0c1e80811f3cf5eca0b28e720bf1bcc84a53",
      "tree": "d03bbabe82d8526b1f5472d38a59ed24f9c8c42b",
      "parents": [
        "8bd9c714365883e405af7c7c4257e404a1053469"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:07:36 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:07:36 2002 +0000"
      },
      "message": "[zebra 14631] Generic PtP and RFC3021 interface addressing support\n"
    },
    {
      "commit": "8bd9c714365883e405af7c7c4257e404a1053469",
      "tree": "25ba308a2b9700eaaa41aee815f83e8437e43126",
      "parents": [
        "2e3b2e474ed5ba04744b167132a84f9954485af4"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:05:16 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:05:16 2002 +0000"
      },
      "message": "changelog updated\n"
    },
    {
      "commit": "2e3b2e474ed5ba04744b167132a84f9954485af4",
      "tree": "cc07fb34a1bf21ead5cc3ad69e4a9dfde2b43b0e",
      "parents": [
        "7afa08da2d3690baee1739da400775f8543f5863"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "message": "zebra link state detection support\n"
    },
    {
      "commit": "7afa08da2d3690baee1739da400775f8543f5863",
      "tree": "e050940bb5e77b4cbaed844b689bbd543e2372c7",
      "parents": [
        "30961a15cf3837b62c65d4c0ecf3ee05f4b6bf55"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:59:45 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:59:45 2002 +0000"
      },
      "message": "ospfd Point-to-Multipoint support\n"
    },
    {
      "commit": "30961a15cf3837b62c65d4c0ecf3ee05f4b6bf55",
      "tree": "b70d64c8b4d08d745311262cf3366bda4b2260a1",
      "parents": [
        "9483e15540359cbd90b3f6481f1a7390a92167a7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:56:48 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:56:48 2002 +0000"
      },
      "message": "Greg Troxel \u003cgdt@ir.bbn.com\u003e\n[zebra 15715] FIX for ospf md5 authentication problem, finally!\n\nfix copy of ospf packet buffer\n"
    },
    {
      "commit": "9483e15540359cbd90b3f6481f1a7390a92167a7",
      "tree": "d563d465517b55e1cf45b387411b53090ef3402f",
      "parents": [
        "48b33aaf706367aa9d647e2893f974a7f5740a6b"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:55:25 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:55:25 2002 +0000"
      },
      "message": "zebra-ospfd-md5auth-seqnum.patch - paulj - change OSPF md5 sequence number\nto be derived from time() to speed up synching after restart of ospfd\n"
    },
    {
      "commit": "48b33aaf706367aa9d647e2893f974a7f5740a6b",
      "tree": "3c992dd22b17159d6f3abf657c58470b13820db9",
      "parents": [
        "727d104b15d6293d7223e7830f2e37ae98022cac"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:52:52 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:52:52 2002 +0000"
      },
      "message": "patch from Frank van Maarseveen \u003cF.vanMaarseveen@inter.NL.net\u003e\n[zebra 14599] PATCH: permit [no]multicast command for (yet) inactive interfaces\n"
    },
    {
      "commit": "727d104b15d6293d7223e7830f2e37ae98022cac",
      "tree": "9ab7e7fecd699f30abc63a5f4612fa9f592db098",
      "parents": [
        "4fc01e67edf1763c9812438effe1d4b1c8b9897b"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:50:29 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:50:29 2002 +0000"
      },
      "message": "Added RIPv1 patch - bug fixes and improved/more interoperable classful\nsubnet handling\n"
    },
    {
      "commit": "4fc01e67edf1763c9812438effe1d4b1c8b9897b",
      "tree": "c1347fa46b21e93c7705707cec1dd623fe614547",
      "parents": [
        "718e3744195351130f4ce7dbe0613f4b3e23df93"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:49:00 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:49:00 2002 +0000"
      },
      "message": "Added vtysh patch to allow \u0027write file\u0027 command to write either\nper-daemon and/or integrated config file\n"
    },
    {
      "commit": "718e3744195351130f4ce7dbe0613f4b3e23df93",
      "tree": "bac2ad39971cd43f31241ef123bd4e470f695ac9",
      "parents": [],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:15:29 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:15:29 2002 +0000"
      },
      "message": "Initial revision\n"
    }
  ]
}
