)]}'
{
  "log": [
    {
      "commit": "34195bf6ddec586df823c4adecd692424cf3a0fe",
      "tree": "ae874ef2847cc5598e97e3530ae264cb5b771a00",
      "parents": [
        "41d3fc96959c9dea614822dfbb1891cd9a6f38a4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 06 12:07:06 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 06 12:07:06 2004 +0000"
      },
      "message": "[quagga-dev 1002]. Also fix date of previous commit in Chanelog.\n"
    },
    {
      "commit": "41d3fc96959c9dea614822dfbb1891cd9a6f38a4",
      "tree": "b493df69256ed58534ddd9a00a9a900f1ed80c6e",
      "parents": [
        "4991f6ca305a325d1ec7a38eeb2a7cf8cf6d7f2d"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 06 11:59:00 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 06 11:59:00 2004 +0000"
      },
      "message": "* Fixed lowering privileges in proc ipforward method.\n* Fixed \"(no) ipv6 forwarding\" command logic.\n* Added --disable-capabilities switch to configure.\n"
    },
    {
      "commit": "f571dab0c677ca4f3328ea944cc59ab2269c9a5d",
      "tree": "dcdb8086dd98dd956b0ba9ba9479d4fc2bd3388a",
      "parents": [
        "37318657e5af8774a7a1446157f99496e887719f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 22 08:55:25 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 22 08:55:25 2004 +0000"
      },
      "message": "Readded SIGTERM handling into sigevent stuff. Fixes bugzilla #85.\n"
    },
    {
      "commit": "f1d92e17ab5f1475018e353ce72e94ebe7a81a44",
      "tree": "1e5f7e1f785fc6f3277c765d42e605921ed31b77",
      "parents": [
        "da9c9a24d09071c77843ce39f0470ba487c300bf"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 18 15:40:33 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 18 15:40:33 2004 +0000"
      },
      "message": "Temorary secondary-label fix. Real fix from Gilad will follow after release.\n"
    },
    {
      "commit": "8c903fbb11e5eed5bcf08d26c2b984d07a82e109",
      "tree": "f9dad8ba30472ad9d272fedded449398558a60f5",
      "parents": [
        "5e4fa1646cafe9e6f8dd78501bea0d2fe1eafdb4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 17 20:39:18 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Mar 17 20:39:18 2004 +0000"
      },
      "message": "Fix bugzilla #82.\n"
    },
    {
      "commit": "5e4fa1646cafe9e6f8dd78501bea0d2fe1eafdb4",
      "tree": "6f2aa13346f91f0924ada9cb9696589264a90552",
      "parents": [
        "253e9336982599957514ad87610e8cd58822fc7a"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Mar 16 14:38:36 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Mar 16 14:38:36 2004 +0000"
      },
      "message": "2004-03-16 David Young \u003cdyoung@pobox.com\u003e\n\n\t* (many) reference \u003clib/version.h\u003e rather than \"version.h\",\n\tbecause version.h is a generated file and not present in the\n\tsource tree when using objdir builds.\n\n(committed by gdt)\nworks fine with normal builds; didn\u0027t try objdir\n"
    },
    {
      "commit": "e23949c0e79d0e5f9ae662b4c661e838f35681ef",
      "tree": "3463d525c83e1defe4815c0e0688294877ebd0d9",
      "parents": [
        "00b0bbcd5ca015a25142cc33ac035e9d75f2417e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 11 15:54:02 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 11 15:54:02 2004 +0000"
      },
      "message": "Fix help. \"ipv6 ...\" commands are for IPv6.\n"
    },
    {
      "commit": "5707ccee87f1ed0917cc3a9d10119d6ba2ffe639",
      "tree": "7c85691f2b31b48c8d0673f363d35d1681a73b64",
      "parents": [
        "fa2b17e39499a77f41a719035a588b7fb63cec63"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 04 19:20:44 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 04 19:20:44 2004 +0000"
      },
      "message": "Fix warning. Approved by Amir.\n"
    },
    {
      "commit": "fa2b17e39499a77f41a719035a588b7fb63cec63",
      "tree": "3356703917aaa8359e0106ae3c2340ee6eea0e1f",
      "parents": [
        "caa6f8ac7d07f8cd3269255e6dce6d248f74af62"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 04 17:45:00 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Mar 04 17:45:00 2004 +0000"
      },
      "message": "Many warning fixes from PC Drew ([quagga-dev 940]) and removing using PAGER\nfrom vtysh ([quagga-dev 932]).\n"
    },
    {
      "commit": "55906724d8d460b16f11c2fe05eeb799325f97ba",
      "tree": "858bcea4e941ce2ab503761821ad575de00b698f",
      "parents": [
        "2db3d05da3ac6b1ff9452a5f291bfc39a719d1c6"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Feb 11 22:42:16 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Feb 11 22:42:16 2004 +0000"
      },
      "message": "Added \"ipv6 forwarding\" command and fixed \"no ipv6 forwarding\" help.\n"
    },
    {
      "commit": "2d75d05218b76230bbd608cab8d08a5f47d77056",
      "tree": "7087570a7dbb8b650349b98a8f1963dfdcedceb1",
      "parents": [
        "9a76e2ddb6c4dc303ce7ed937c0cfa9430c3ed27"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 19 21:31:15 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Jan 19 21:31:15 2004 +0000"
      },
      "message": "2004-01-19 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * tests/test-sig.c: New file, regression test for sigevents.\n        * lib/Makefile.am: add sigevent.{c,h}\n        * (isis|rip|ripng|ospf|ospf6|bgp)d/\\1_main.c: modify for sigevents.\n        * zebra/main.c: ditto.\n"
    },
    {
      "commit": "b27900b7c0c9b4105c8188e277b698b8e64c54cc",
      "tree": "cfce195dc0de508f263a6ad9b34359815d2c55d6",
      "parents": [
        "9ccabd1cdb47cc932b6a43c9e28b6aac9f2a4a0c"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Thu Jan 08 15:44:29 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Thu Jan 08 15:44:29 2004 +0000"
      },
      "message": "2004-01-08  Greg Troxel  \u003cgdt@fnord.ir.bbn.com\u003e\n\n        * kernel_socket.c (kernel_read): Use sockaddr_storage in buffer\n        for reading kernel messages to ensure enough space (necessary on\n        Solaris due to sockaddr_dl being large).  Thanks to Sowmini\n        Varadhan for help with this change.\n"
    },
    {
      "commit": "9ccabd1cdb47cc932b6a43c9e28b6aac9f2a4a0c",
      "tree": "83854726d7a1ef7236058885c841257a7215b6ce",
      "parents": [
        "4bfbea8cc369ef7bb4157efa4324e4ebf3b7374b"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 18:23:02 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 18:23:02 2004 +0000"
      },
      "message": "change perror to zlog_err\n"
    },
    {
      "commit": "4bfbea8cc369ef7bb4157efa4324e4ebf3b7374b",
      "tree": "3540e32a1e50f2da3032bf8620b6ff520713754e",
      "parents": [
        "dbee01fe8b0dc1fd0a5de7e9edcbf319f55a4c92"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 01:13:05 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 01:13:05 2004 +0000"
      },
      "message": "2004-01-05  Greg Troxel  \u003cgdt@fnord.ir.bbn.com\u003e\n        * kernel_socket.c (ifm_read): Major cleanup.  Use Sowmini\u0027s code\n        to find the sockaddr_dl in all cases, narrowing the Solaris ifdef\n        to just the accomodation of broken kernels.  Check sockaddr_dl\n        carefully up front, and later assume any non-NULL sdl pointer is\n        valid.  Clean up types and variable declarations, and rename\n        WRAPUP to SAROUNDUP to make the name fit the behavior.\n"
    },
    {
      "commit": "dbee01fe8b0dc1fd0a5de7e9edcbf319f55a4c92",
      "tree": "ee27918586ee3e775cba4e0b6cb1270270056036",
      "parents": [
        "2934f28ef196ffeb414c9fb8667742d053bc8b40"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 00:36:51 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Tue Jan 06 00:36:51 2004 +0000"
      },
      "message": "increase buffer size for kernel reads\n"
    },
    {
      "commit": "cb42c035cc75a9e0cddc08e1c92e3ddfad9cb916",
      "tree": "0fc66518936102093980f51b33607ba9688f803f",
      "parents": [
        "da26e3b6549e5e8a460b62ac02ed854685f6200d"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Mon Jan 05 17:55:46 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Mon Jan 05 17:55:46 2004 +0000"
      },
      "message": "Fix incorrect test in previous commit; thanks to Sowmini Varadhan for\ncatching this.\n"
    },
    {
      "commit": "da26e3b6549e5e8a460b62ac02ed854685f6200d",
      "tree": "4a76896e4c4c0ef25f50c1cf16520a26eaa38d10",
      "parents": [
        "ddf1c26ca3cfd31ed11a40909bdadc6b823f0697"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Mon Jan 05 17:20:59 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Mon Jan 05 17:20:59 2004 +0000"
      },
      "message": "2004-01-05  Greg Troxel  \u003cgdt@ahi.ir.bbn.com\u003e\n\n        * kernel_socket.c (kernel_read): Look up interfaces by index\n        first, so that state changes which do not include a sockaddr_dl\n        now work.  Add many sanity checks.  In\n        particular, do not assume that a sockaddr_dl follows a message\n        without checking the ifm_addrs flags, and do not trust the length\n        in a sockaddr_dl.  Add/clarify many comments.\n"
    },
    {
      "commit": "9e867fe663c4eb43c36f35067c0dd092e8c83c14",
      "tree": "f29461b6a2dc8c38037dc0cf91e70392f9ed4ab2",
      "parents": [
        "eb5d44eb8dcf25a1b328e57d1eabb1f89e3bc59b"
      ],
      "author": {
        "name": "jardin",
        "email": "jardin",
        "time": "Tue Dec 23 08:56:18 2003 +0000"
      },
      "committer": {
        "name": "jardin",
        "email": "jardin",
        "time": "Tue Dec 23 08:56:18 2003 +0000"
      },
      "message": "Merge isisd into the Quagga\u0027s framework:\n  - add privs support\n  - use misc quagga\u0027s definitions\n  - make it compile\"able\"\n  - fix segfault cases related to hostname()\n  - add debug isis xxx command\n\nThis patch has been approved by Paul Jakma.\n"
    },
    {
      "commit": "4b5e1359cf7dd7a346a5e6848244597e6df4373e",
      "tree": "ffc9419020af3f555776180fd0ecc0c7b86df45c",
      "parents": [
        "fa3232e12235d02204bc7060018b49d3e888faa7"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Dec 03 17:54:34 2003 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Dec 03 17:54:34 2003 +0000"
      },
      "message": "reorder includes to avoid warning.\nfixes rest of bug #62\n"
    },
    {
      "commit": "d6b72f7ab1d33a43e1b6d5cd3410ac53e3bf74a9",
      "tree": "e2b2a025757c52802bc12a4b6b8eec94d4bcdd79",
      "parents": [
        "6c110e700c21ef3d1d958da1df54261960d7ef07"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Dec 03 17:24:27 2003 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Dec 03 17:24:27 2003 +0000"
      },
      "message": "Add support for --enable-exampledir to specify where to place example\nfiles, defaulting to sysconfdir (matching previous behavior).\n\nThis is needed to support (cleanly) NetBSD pkgsrc, which requires that\nexample config files go in $(prefix)/share/examples/pkgname, rather\nthan in $(prefix)/etc/pkgname.\n"
    },
    {
      "commit": "b84d3a1b6e3e915a0f2e24f13c0445fae8f37a6f",
      "tree": "03e1417b2fbe16bb3991fa1fa48bf25d38ea97b6",
      "parents": [
        "42d14d985049a6e810a4036b684e38c005480373"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 10:31:01 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Nov 17 10:31:01 2003 +0000"
      },
      "message": "2003-11-17 Jay Fenlason \u003cfenlason@redhat.com\u003e\n\n\t* zebra/rt_netlink.c: netlink_parse_info() ignore messages which are\n\t  not from kernel. Reported to RH by Herbert Xu. See\n\t  http://rhn.redhat.com/errata/RHSA-2003-307.html and CAN-2003-0858.\n"
    },
    {
      "commit": "b5f4502146e38ee34efa5336ec82b4501a1cf705",
      "tree": "60393dde529ecb841d8ada365006d65291420a67",
      "parents": [
        "af5cd0a52c89c73ec8c0fec808ab866cdda96f30"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 02 07:28:05 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 02 07:28:05 2003 +0000"
      },
      "message": "2003-11-02 Krzysztof Oledzki \u003coleq@ans.pl\u003e\n\n        * zebra/zebra_rib.c: Revert patch (dating from zebra.org) which\n          caused zebra to read all routes in all tables, rather than just\n          the main table. See [quagga-dev 280].\n"
    },
    {
      "commit": "6baeb98892ee1c574af5cd3896a3a6d65cef0117",
      "tree": "ea244accc69fe5778a747c3a2c2e5c1387df7b63",
      "parents": [
        "948cf55c4447257960fda0d89fb45e93644393b1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Oct 28 03:47:15 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Oct 28 03:47:15 2003 +0000"
      },
      "message": "2003-10-27 Gilad Arnold \u003cgilad.arnold@terayon.com\u003e\n\n        * zebra/zebra_rib.c: (nexthop_active_update) Check for multipath\n          limit when setting changed flag to avoid spurious changes.\n          (static_install_ipv{4,6}) dont uninstall by default, might not be\n          required - avoid spurious uninstalls.\n          (static_uninstall_ipv{4,6}) only uninstall the route if its\n\t  actually FIB route.\n"
    },
    {
      "commit": "04bd484bf272dd580349c832f84cf5ffa27003bb",
      "tree": "9f9c50fda664e0ce62d43af14ec7ec546f801547",
      "parents": [
        "e92fbaf27ea028d4def1246b7fadb2096bfa4d8d"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Oct 24 04:24:39 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Oct 24 04:24:39 2003 +0000"
      },
      "message": "2003-10-24 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * configure.ac: Check for fcntl()\n        * {bgpd,ospf,ospf6d,ripd,ripngd}/Makefile.am: Install conf file via\n          regular automake means, not magic install incantations, see\n          bug #38.\n        * lib/Makefile.am: install the headers, needed to link libzebra.a\n          (and hence libospf.a, OSPF-API, etc.)\n"
    },
    {
      "commit": "30be80287aeb91e97159aacd48ee90603a9dfef5",
      "tree": "78a98045aab8b9a92688f10ff8e3cca9c8535f31",
      "parents": [
        "1ac09d3e435a0a430cc3d218aa82015aa5741ed9"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 22 02:51:38 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 22 02:51:38 2003 +0000"
      },
      "message": "2003-10-22 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * zebra/kernel_socket.c: HAVE_IPV6 conditional for WRAPUP when\n          HAVE_SA_LEN is not defined. bcopy -\u003e memcpy, bcopy is not\n          portable.\n"
    },
    {
      "commit": "d1724b6555510c22d2df55a9245fe4e6f1b08922",
      "tree": "3c72ac425f323f94fe57f8310011fc1f8c9273b5",
      "parents": [
        "dc7a2bf1c831f6bcea5945f7fe2eb2ba111e4224"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 22 02:41:52 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Oct 22 02:41:52 2003 +0000"
      },
      "message": "2003-10-22 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * lib/regex.c: bzero -\u003e memset\n        * zebra/ioctl.c: ditto. bzero is not portable.\n"
    },
    {
      "commit": "2fe28bbb7bccedf2e486a8c0aaa43037c91b3336",
      "tree": "fcc860376527f391ec341db2c212882856cf7793",
      "parents": [
        "44ebf843d7b4e434bc490a9d8716af2b83924758"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Oct 13 08:59:40 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Oct 13 08:59:40 2003 +0000"
      },
      "message": "2003-10-13 Douglas Fraser \u003cdoug+quagga@idmf.net\u003e\n\n\t* zebra/connected.c: PtP revert fixup. Zebra was not creating\n\tconnected route for PtP peer.\n"
    },
    {
      "commit": "44ebf843d7b4e434bc490a9d8716af2b83924758",
      "tree": "8e3a17e6a05cd976412938b84a5818680bf46b93",
      "parents": [
        "143a385f0cb858126e79bb7c637c2aede234c4ab"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Oct 07 05:58:48 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Oct 07 05:58:48 2003 +0000"
      },
      "message": "2003-10-07 Tarhon-Onu Victor \u003cmituc@iasi.rdsnet.ro\u003e\n\n\t* zebra/ipforward_proc.c: (ipforward) Close the fd for\n\t/proc/net/snmp. See [quagga-dev 284]\n"
    },
    {
      "commit": "143a385f0cb858126e79bb7c637c2aede234c4ab",
      "tree": "50114b91a57e3fde3c03030d20a19663c3d576ba",
      "parents": [
        "5ae016eeecc8f0ce353b875b98a7c64ce70931dd"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 20:06:13 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 20:06:13 2003 +0000"
      },
      "message": "2003-09-29 Gilad Arnold \u003cgilad.arnold@terayon.com\u003e\n\n\t* zebra/zebra_rib.c: Fix possible dangling reference to rib\n \troute_nodes - unlock it the appropriate number of times. (twice,\n\tbecause of the implicit lock). see [quagga-dev 251].\n"
    },
    {
      "commit": "31a476c7e9014aa81dc0d50b4100431ab111bf3f",
      "tree": "3f7fd8ed9010917cb3e93389d4e1d5a9649c5741",
      "parents": [
        "f3e05cda2a35abe1bcd9e3ad33083f4c78c0235a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 19:54:53 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Sep 29 19:54:53 2003 +0000"
      },
      "message": "2003-09-29 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* zebra/connected.c: revert the \u0027generic PtP\u0027 patch as it causes\n\tfar too many problems. People who use FreeSWAN should investigate\n\tnative linux ipsec.\n\t* zebra/rt_netlink.c: ditto\n\t* lib/if.c: ditto\n\t* ripd/ripd.h: ditto\n\t* ripd/ripd.c: ditto\n\t* ripd/rip_interface.c: ditto\n\t* ospfd/ospfd.c: ditto\n\t* ospfd/ospf_snmp.c: ditto\n\t* bgpd/bgp_nexthop.c: ditto\n"
    },
    {
      "commit": "3e95a0741feb6f8b103577d0019a5db562d8315d",
      "tree": "2641536c822c2823a89d3edfbdb3bdba42cc1165",
      "parents": [
        "9491975ef91a97d98a9b2af72da3da0fa761b160"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Sep 24 00:05:45 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Sep 24 00:05:45 2003 +0000"
      },
      "message": "2003-09-24 sowmini.varadhan@sun.com\n\n        * zebra/kernel_socket.c: Fix up WRAPUP macro to deal with multiple\n          address families in the absence of sa_len element in struct\n          sockaddr.\n          (ifm_read): Handle solaris 9 if_msghdr_t.\n          Deal with interfaces which are incomplete, lookup on name rather\n          than the placeholder interface index of -1.\n"
    },
    {
      "commit": "537d8ea92bbf96086e03a0da5a7d26ee4b92e0cc",
      "tree": "392b903719b0ebcdc793aad7f35bdd5801e49a84",
      "parents": [
        "fd6ff2fc6b221f2c2c30ef0d29f5e938c1737577"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Aug 27 06:45:32 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Aug 27 06:45:32 2003 +0000"
      },
      "message": "2003-08-27 Jay Fenlason \u003cfenlason@redhat.com\u003e\n\n\t* bgpd/bgp_routemap.c: attr-\u003emed is type u_in32_t, should be\n\t  compared with UINT32_MAX\n\t* ospfd/ospfd.c: remove redundant assert\n\t* zebra/rtadv.c: add missing include for zebra/rib.h\n"
    },
    {
      "commit": "fd6ff2fc6b221f2c2c30ef0d29f5e938c1737577",
      "tree": "fa1707523ae5dfd8de02b24500af58dbf82d8a79",
      "parents": [
        "c2f3a4cc771da731f5aedc455e6f6a543acd6e38"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Aug 27 06:17:18 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Aug 27 06:17:18 2003 +0000"
      },
      "message": "2003-08-27 Jay Fenlason \u003cfenlason@redhat.com\u003e\n\n\t* lib/Makefile.am: Do not use a lib (libcap) as a dependency\n\t* zebra/Makefile.am: Link in libcap\n"
    },
    {
      "commit": "d81fadfd889aa7bc657fa19752344a585e8c274a",
      "tree": "26a7026afc547f4ac82ea4d84394109323cbb246",
      "parents": [
        "e835d10483f833c8e6bb2957ea10a2f7a9cb4888"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Aug 14 05:32:12 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Aug 14 05:32:12 2003 +0000"
      },
      "message": "2003-08-14 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* zebra/main.c: Fixup ZEBRA_{GROUP,USER} defines -\u003e\n\t  QUAGGA_{USER,GROUP}\n\t* bgpd/bgp_main.c: ditto\n\t* ospf6d/ospf6_main.c: ditto\n\t* ospfd/ospf_main.c: ditto\n\t* ripd/rip_main.c: ditto\n\t* ripngd/ripng_main.c: ditto\n\t* zebra/main.c: ditto\n"
    },
    {
      "commit": "96735eeafe4713b60700915dd2fb6dcbd0f09c8f",
      "tree": "49b7f583956e3d7ad91dcfa006d18e20f57efe15",
      "parents": [
        "286e1e71538440ed0bef4576aded1745191490d3"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Aug 10 02:51:22 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Aug 10 02:51:22 2003 +0000"
      },
      "message": "2003-08-10 amir \u003camir@datacore.ch\u003e\n\n\t* Add missing \u0027i\u0027 to getopts, short form of --pid_file.\n\t  see http://bugzilla.quagga.net/show_bug.cgi?id\u003d25\n"
    },
    {
      "commit": "106d2fd572c18bebe3dc44031c6d5e56e7b9030f",
      "tree": "df226870be1178b347947aecbe7d468022b47a91",
      "parents": [
        "12ab19f1863e80134353244967a87805b12fe722"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Aug 01 00:24:13 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Aug 01 00:24:13 2003 +0000"
      },
      "message": "2003-08-01 Cougar \u003ccougar@random.ee\u003e\n\n\t* lib/if.c: (if_cmp_func) new function, compare interface names in\n\talphabetical order.\n\t(if_create) Take name as argument and add interface in sorted order.\n\t(if_get_by_name),(interface_cmd) fixup calls to if_create - see\n\tabove.\n\t(if_init) register list comparison function.\n\t* lib/if.h: Add comparison function, modify if_create prototype.\n\t* lib/zclient.c: Modify call to if_create.\n\t* ospfd/ospf_interface.c: (ospf_vl_new) modify call to if_create.\n\tchange sprintf to snprintf.\n\t* zebra/kernel_socket.c: (ifm_read) modify call to if_create.\n"
    },
    {
      "commit": "7021c425a9f5bd9f62b934124becbaadd961cac0",
      "tree": "cf386f6923eac9f1c665400d0557448c4f5a89e0",
      "parents": [
        "8fc0f64b143ed2155567f5c9f0faad756252146a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jul 15 12:52:22 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jul 15 12:52:22 2003 +0000"
      },
      "message": "2003-07-15 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * lib/version.h: add ZEBRA_URL (unused for now)\n        * lib/vty.c: CMD_ERR_NOTHING_TODO when reading conf file should not\n          be fatal. slight reformating.\n        * ospfd/ospf_zebra.c: ignore reject/blackhole routes if zebra sends\n          these type of routes. probably should be a new type of route to\n          allow daemons to more easily choose whether to redistribute them\n          - rathen than just a flag (eg for reject/blackhole).\n          reorder the is_prefix_default test for ZEBRA_IPV4_ROUTE_DELETE to\n          avoid the inverted test - slightly more readable.\n        * redhat/zebra.spec.in: Add ospfapi port to services file, if\n          with_ospfapi.\n        * zebra/rib.h: Change nexthop types to an enum.\n        * zebra/rt_netlink.c: run it through indent -nut.\n          Add nexthop_types_desc[] descriptive array for nexthop types.\n          (netlink_route_multipath) debug statements indicate which branch\n          they are in and print out nexthop type.\n        * zebra/zebra_rib.c: slight reformatting.\n        * zebra/zebra_vty.c: Pass ZEBRA_FLAG_BLACKHOLE flag to\n          static_add_ipv4() if Null0 route is configured. print out Null0 if\n          STATIC_IPV4_BLACKHOLE route, and ignore flags (shouldnt be\n          possible to set flags from vty) for config and show route.\n"
    },
    {
      "commit": "7f809942dac3683794f3e9924d327b48be0fe852",
      "tree": "513213c90ab98c8c7d01f84ea11d2529a202ccae",
      "parents": [
        "f706c10c828a0526326af42d95238b2cd3eb06d1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jul 12 21:49:25 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jul 12 21:49:25 2003 +0000"
      },
      "message": "2003-07-12 Matthias Ferdinand \u003cmferd@sanet.de\u003e\n\n\t* zebra/if_proc.c: zebra does not close the file after reading\n          /proc/net/dev for retrieving interface names and statistics.\n          call fclose(fp) before returning from ifstat_update_proc()\n          or interface_list_proc()\n"
    },
    {
      "commit": "53db0feeb80e2003c3ed94bc05d05d46645f3e95",
      "tree": "f4be610d2e1dfe28aba3124783f4dcdb554b4ce9",
      "parents": [
        "afbacce1205b8ad2ee36adc4e255b22b54b3cd4f"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 11 17:42:09 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 11 17:42:09 2003 +0000"
      },
      "message": "2003-06-11 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* zebra/if_ioctl.c: Fix missing declaration for if_fake_index.\n\t  See bug id #24: http://bugzilla.dishone.st/show_bug.cgi?id\u003d24\n\t  reported by Vsevolod Sipakov.\n"
    },
    {
      "commit": "9bcdb638923e3254b64744d02ceab62b8f2941a1",
      "tree": "2262989f3d4105cd0b539ece52628666ff3b580c",
      "parents": [
        "0c14ad88aab5df610acfe035385a7323e1683035"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jul 08 08:09:45 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jul 08 08:09:45 2003 +0000"
      },
      "message": "2003-07-8 Chris Andrews \u003cchris@nodnol.org\u003e\n\n\t* zebra/kernel_socket.c: Update for new zebrad global struct\n\t* zebra/ipforward_solaris.c: Add missing privs.h include. Uncomment\n          /dev/ip define.\n\t* lib/zebra.h: Add typedefs for SunOS.\n"
    },
    {
      "commit": "5ec90d28c9268c54e000c2bcfb9b164abfacbacd",
      "tree": "ab5d297f68b94182647d043d790ffab4a2b44c93",
      "parents": [
        "dd488a78add05f10f58f4096dca622c6b5f1f0c9"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 19 01:41:37 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 19 01:41:37 2003 +0000"
      },
      "message": "2003-06-19 Vladimir Ivaschenko \u003chazard@francoudi.com\u003e\n\n\t* zebra/rt_netlink.c: Debug statements added to\n          netlink_route_multipath()\n\t* zebra/zebra_rib.c: If route has a gateway, delete only existing\n          route with that specified gateway.\n"
    },
    {
      "commit": "dd488a78add05f10f58f4096dca622c6b5f1f0c9",
      "tree": "22c986ccc07a5378e5b99fcdf32cc953c841b8d8",
      "parents": [
        "3db0a77852cc0de1385f7046355321229a567924"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 19 01:21:07 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 19 01:21:07 2003 +0000"
      },
      "message": "2003-06-19 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* Fix lib/smux.c\u0027s reliance on daemons exporting struct\n          thread_master *master.\n"
    },
    {
      "commit": "b21b19c5785487f2ff4a6ce38f45c2e6c35f4363",
      "tree": "c79f90ce7bd798b3f1391010153d9fdf7c7418f0",
      "parents": [
        "0e4f190ebf5a26e4b66fb49cd74ae0ff0c7e0863"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 15 01:28:29 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 15 01:28:29 2003 +0000"
      },
      "message": "2003-06-15 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* lib/vty.{c,h}: Remove vty layer depending on a \u0027master\u0027 global,\n\t  pass the thread master in explicitly to vty_init. Sort out some\n\t  header dependency problems with lib/command.h\n\t* zebra/: Move globals to struct zebrad. Update vty_init().\n\t* (.*)/\\1_main.c: update call to vty_init().\n"
    },
    {
      "commit": "0e4f190ebf5a26e4b66fb49cd74ae0ff0c7e0863",
      "tree": "cb2d35c5a85e8dd5f70db46604e6dda55b9bc9f4",
      "parents": [
        "9238b1e82efd5c6a7192491e2ccde2dfa32322c8"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 12 02:13:45 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Jun 12 02:13:45 2003 +0000"
      },
      "message": "2003-06-12 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* zebra/ioctl.c: Properly zero-out struct ifreq before passing it\n          to the SIOCSIFFLAGS ioctl(2), so that it doesn\u0027t\n          occasionally trigger promisc mode on interface.\n          Reported/tested by:\tVladimir B. Grebenschikov \u003cvova@sw.ru\u003e\n\n          (patch snarfed taken from FreeBSD ports)\n"
    },
    {
      "commit": "1a691cc34733f1a14cfc2dc1cacd1d3376d771cb",
      "tree": "dbf09f61ff869e683ef732fc5fecf0390bba94b8",
      "parents": [
        "0c0f9cd54b1ade198a0b92fc48844710e2a89f94"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 00:12:15 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jun 07 00:12:15 2003 +0000"
      },
      "message": "2003-06-07 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* (zebra/rtadvc.): can not set checksum for ICMPV6, see:\n\nFrom: Jun-ichiro itojun Hagino \u003citojun@iijlab.net\u003e\nSubject: [zebra 11052] setsockopt(IPV6_CHECKSUM) does not work for ICMPv6\nsocket\n\nsetsockopt(IPV6_CHECKSUM) does not work for ICMPv6 socket.\nRFC2292 may not be clear enough about it (it talks about raw socket\nand ICMPv6 socket mixed up), but the next revision\n(draft-ietf-ipngwg-rfc2292bis-02.txt) is very clear about it.\n\u003e   An attempt to set IPV6_CHECKSUM for an ICMPv6 socket will fail.\n"
    },
    {
      "commit": "592c8148981d196a7bda2f1b85a63943fd0cfdf2",
      "tree": "273fd4151921ffbb91cc42535083ff7e1bf04bdb",
      "parents": [
        "bf9392c6e932080156e70c0436977fd5dbcdb0cd"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 06 23:24:55 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jun 06 23:24:55 2003 +0000"
      },
      "message": "2003-06-07 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* Revert Cougar\u0027s sort interface names patch, causes problems with\n\tenabling of interfaces for OSPF in ospfd.\n"
    },
    {
      "commit": "a939514c59fe1a56a820e82bc59d82c721076c03",
      "tree": "85a2d3d1d3e0a4f35d0865778c7522b8569b40f8",
      "parents": [
        "41908818b8f446befc3654fa5bbc98c6c0af92a3"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jun 05 17:50:01 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jun 05 17:50:01 2003 +0000"
      },
      "message": "Patch from Cougar - sort iflist by name.\n"
    },
    {
      "commit": "41908818b8f446befc3654fa5bbc98c6c0af92a3",
      "tree": "657538dfcec865b37124b3641c6245514d72d296",
      "parents": [
        "ba3a0bc5fa05691b211340bef69c5c7a3659d412"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jun 05 11:33:10 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jun 05 11:33:10 2003 +0000"
      },
      "message": "Unbreak router advertisment feature when using capabilities.\n"
    },
    {
      "commit": "edd7c245d3a77012abf801da00d5664ebaa5f749",
      "tree": "d4fada229d7980fb751f28c9a979aa88de1a0af0",
      "parents": [
        "a159ed935b580ed99111a185734ddd9c973e7691"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jun 04 13:59:38 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Jun 04 13:59:38 2003 +0000"
      },
      "message": "2003-06-04 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* Merge of zebra privileges\n"
    },
    {
      "commit": "457ef551ebe112c2f0a6ec21f6ba865fbb85a84b",
      "tree": "b4abc10a56664f2c20635b1c4afe3fd526cff109",
      "parents": [
        "a65ec8454984c26983c94700fe5e8c1d11e6a75f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 28 12:02:15 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 28 12:02:15 2003 +0000"
      },
      "message": "IPv4 part of \"make reject|blackhole routes work without nexthop|interface\".\n"
    },
    {
      "commit": "368aa3f0f5edc4daed09055b641c47a9e9dc48c9",
      "tree": "da46e98e5c9f8a1c94189dc2de43542ffd5e266a",
      "parents": [
        "b3516a791d7d44469b9a2a51557347958fe506d1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 25 23:24:50 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 25 23:24:50 2003 +0000"
      },
      "message": "Fix missing else in static_add_ipv4() which was causing case of (!ifname)\nto always be considered to be a blackhole route. (if gate is passed in, it\ncant be).\n"
    },
    {
      "commit": "595db7f16506d2c82a3478e9f8dab00c8733d386",
      "tree": "240d477dd4b5262ba78cc50fda4b81de09e2c91c",
      "parents": [
        "726f9b2bbdd5a607f7b0a10a64547739b807e361"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 25 21:35:06 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 25 21:35:06 2003 +0000"
      },
      "message": "Add back support for null0 interface blackhole routes.\n"
    },
    {
      "commit": "726f9b2bbdd5a607f7b0a10a64547739b807e361",
      "tree": "9c46a6ce71cf4ea96553a85a231e38b462b3dee0",
      "parents": [
        "71c0fb50fe75928f8fbe1bbff1995d9d91b3702b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 21:04:54 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 21:04:54 2003 +0000"
      },
      "message": "Last fixes from 6Wind patch.\n"
    },
    {
      "commit": "81dfcaa2e27d53f4eb61c549e03065dcb1b8eec3",
      "tree": "2aed449138a4833fe343052cdfa505be74332cb4",
      "parents": [
        "15291357d130b804dcdcfd81bdb1b86a84567fd0"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 19:21:25 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 19:21:25 2003 +0000"
      },
      "message": "Route (reject|blackhole) support from 6Wind patch.\n"
    },
    {
      "commit": "647e4f1fb76f01695f29a877e61d2e4a33cfefee",
      "tree": "adeaab9faa6fda9544417c247fc1662248599c32",
      "parents": [
        "269c67c5ea350bbf5562edceff00cee0b2ef3b68"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 11:43:52 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun May 25 11:43:52 2003 +0000"
      },
      "message": "\"ip forwarding\" command. Patch from Jim Crumpler.\n"
    },
    {
      "commit": "269c67c5ea350bbf5562edceff00cee0b2ef3b68",
      "tree": "6145ab96b90db180af9be520494540daefd11d74",
      "parents": [
        "0750d21fcfb034e47f781b09d984bfeec62b56a4"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 24 22:50:31 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 24 22:50:31 2003 +0000"
      },
      "message": "Jim Crumpler:\n\nworking ipforward_solaris.c\n"
    },
    {
      "commit": "bfc135325e9b0768c78b51c9495eb0fbabc59db6",
      "tree": "c754c2132248a7436ca8012d383a73f89fcc66ef",
      "parents": [
        "fd2dfce21bb21cc2f3d6de723812875ec7abc1f5"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 24 06:40:04 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 24 06:40:04 2003 +0000"
      },
      "message": "From: Hasso Tepper \u003chasso@estpak.ee\u003e\n\nensure only interfaces that are inactive or do not exist can be deleted\n"
    },
    {
      "commit": "32d2463ca26529ad4700af6d5748f927e1305694",
      "tree": "9f8dc5d94e1fb11a86585864e45401f552ecf2dd",
      "parents": [
        "7515cffe5e11fdfbc437c02b7af8b0f7b4d36fce"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 09:25:20 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 09:25:20 2003 +0000"
      },
      "message": "From: Hasso Tepper \u003chasso@estpak.ee\u003e\n\nAdd the \u0027no interface\u0027 command to all the daemons and vtysh. now it\u0027s\npossible to delete interface from routeing daemons as well only if it\ndoesn\u0027t exist in os.\n\nhttp://hasso.linux.ee/zebra/ht-no_interface_fix.patch\n"
    },
    {
      "commit": "7515cffe5e11fdfbc437c02b7af8b0f7b4d36fce",
      "tree": "9acbaf0a01080920f25cf1107465a7f79ee7e2f8",
      "parents": [
        "1921e6f8965701040fe1b4f27619b2d7f3fec254"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 09:21:46 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 09:21:46 2003 +0000"
      },
      "message": "Undo Hasso last patch, about to apply a slightly updated patch.\n"
    },
    {
      "commit": "68f43848fa0f8ac16c768bafb8891495dcf232ae",
      "tree": "8121fe0ee7c19001dd3c37c798e8368681a59493",
      "parents": [
        "8d6b00e4f34dfb6f627b49713bf80b0745b50abc"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 06:58:44 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 23 06:58:44 2003 +0000"
      },
      "message": "From: Hasso Tepper \u003chasso@estpak.ee\u003e\n\nhttp://hasso.linux.ee/zebra/ht-no_interface-23052003.patch\n\nAdd the \u0027no interface\u0027 command to all the daemons and vtysh.\n"
    },
    {
      "commit": "445f143525ffd8b465aa31cb83b2dd38b9741ef7",
      "tree": "177df41fcf4d0e23f57443781b4521ac9fd1cc77",
      "parents": [
        "d748032f10058182bcd10ca7fe244d6918b68f14"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 19:00:31 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 19:00:31 2003 +0000"
      },
      "message": "Update Changelogs\n"
    },
    {
      "commit": "a4b70768b4d08683d16a1e8225411e429fb531d3",
      "tree": "7292e9fb8c75d76120bbf67c63d141d6cad37ec3",
      "parents": [
        "a0f6acd8a49906399e2ac73fde6406da552b2443"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 17:19:48 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 17:19:48 2003 +0000"
      },
      "message": "From: Gilad Arnold \u003cgilad.arnold@terayon.com\u003e\nSubject: [zebra 19084] Re: suspected memory leakage upon static route\n\nI believe this is a more complete patch, it also addresses\nallocating/freeing of nexthop-\u003eifname string buffer (1) using\nXSTRDUP/XFREE macros (thus correctly updating memory statistics), and\n(2) for all nexthop-\u003etype cases that carry an ifname string.\n"
    },
    {
      "commit": "a0f6acd8a49906399e2ac73fde6406da552b2443",
      "tree": "e89a2bd710f70fe860bfe8f7963b880fec65a0c3",
      "parents": [
        "843521964f801b1266e59df3b005b1b4bf48fdc7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 14 18:29:13 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 14 18:29:13 2003 +0000"
      },
      "message": "From: Gilad Arnold \u003cgilad arnold at terayon com\u003e\nSubject: [zebra 19080] suspected memory leakage upon static route deletion\n\nupon deletion of a static route entry, at the end of\nzebra/zebra_rib.c/static_delete_ipv4(), there\u0027s a call to XFREE to\ndeallocate the \u0027struct static_ipv4\u0027. However, in the case of a static with\nifname as nexthop (type\u003d\u003dSTATIC_IPV4_IFNAME), this struct holds a pointer to\na dynamically allocated ifname string buffer (si-\u003egate.ifname, see its\nallocation within static_add_ipv4() using XSTRDUP). IMO, the attached patch\nis required.\n\nNotes: the same applies to IPv6 statics as well (fix included in patch);\nand, I admit I haven\u0027t yet tested that, but it seems simple enough to be\nworking... ;-\u003e\n"
    },
    {
      "commit": "5f37d86f837e666f7915ee6dc971e44e495d41f3",
      "tree": "a31e657803f2600dd1c0aac533e2087de8055df2",
      "parents": [
        "c2191eaee5686cdcb54c5f26afffa4a029c691de"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Apr 19 00:11:28 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Apr 19 00:11:28 2003 +0000"
      },
      "message": "From: Israel Keys \u003cikeys@agile.tv\u003e\nSubject: [zebra 18677] zebra initialisation bug and patch\n\nHi All,\n\nI have found a bug in zebra that prevents its routing table and\ninterface database from being initialised properly. The problem occurs\nwhen a request is made via the netlink socket but the kernel produces a\nEWOULDBLOCK/EAGAIN when the result is trying to be retrieved via a\nrecvmsg(). Zebra does not do anything about this and continues to\nfunction  (with an empty routing table and interface list) as if nothing\nhas happened. With no such information the routing protocol dosn\u0027t work!\n\nTwo functions are called during the initialisation of Zebra:\ninterface_lookup_netlink() and netlink_route_read() - obtaining the\ninterfaces and routing table from the kernel respectively. These are the\nonly time these functions are called.\n\nThese functions, interface_lookup_netlink() and netlink_route_read(),\nuse netlink_parse_info() to recieve the data from the netlink socket.\nThe problem is, netlink_parse_info() returns (without error) when its\ncall to recvmsg() results in an errno EWOULDBLOCK/EAGAIN. This behaviour\nis expected by other funtions calling netlink_parse_info() -\nnetlink_parse_info is simply recalled at a later stage. However, on\ninitialisation it is never recalled.\n\nSince zebra is expected to nothing else during initialisation it was\neasiest to temporarily change the netlink socket to BLOCK and wait\nindefinently until the kernel responds with the required information.\n\nAttached is a patch with these changes.\n\nComments and questions are welcome.\nPlease inform me if this patch is added to the Zebra source.\n\n--israel\n"
    },
    {
      "commit": "b571e7fc5f95aae3c790e7edba46358635b59f10",
      "tree": "42d80e5799839dc487b6fb038d9cb140de163ab7",
      "parents": [
        "960182aaf05c2f11415789b2edcdc53ac3858f01"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 07:16:59 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 07:16:59 2003 +0000"
      },
      "message": "Amir - rev 198\nLog:\nRemoved unused variable in interface.c\n"
    },
    {
      "commit": "960182aaf05c2f11415789b2edcdc53ac3858f01",
      "tree": "a4bb99006f25df484c21ab4d66d7f22fc2622825",
      "parents": [
        "ef4e09961da9f2c50d1535fb4348f12c4d41612f"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 07:16:04 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 07:16:04 2003 +0000"
      },
      "message": "Amir - revision 197\nLog:\nI\u0027ve fixed a small bug in connected_down_ipv4():\nI changed\n\nif (ifc_pointopoint (ifc))\n\ninto\n\nif (ifc_pointopoint (ifc) \u0026\u0026 dest)\n\nlike show in connected_up_ipv4()\n\nAfter changing this \u0027ip address x/y\u0027; \u0027no ip address x/y\u0027 works without\ncrash\nwhen done in sequence.\n"
    },
    {
      "commit": "ef4e09961da9f2c50d1535fb4348f12c4d41612f",
      "tree": "9790257d6209f9e153d4888a5032ff16471d1121",
      "parents": [
        "ecfd5b48bf6d2c3716f13046df71a337bbeee316"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 06:37:27 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Apr 09 06:37:27 2003 +0000"
      },
      "message": "Add Makefile.in to the remaining .cvsignore\u0027s\nAdd ospfclient to ospfclient/.cvsignore\n"
    },
    {
      "commit": "23bd12c31d701376d45ab45aa8c838e9fb5e409c",
      "tree": "d8d6b789194b372dcf067bc1bc5169f0ff284e8d",
      "parents": [
        "3a6440d756863b602cfaaf0259b71950e67b2a6e"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Apr 07 06:11:09 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Apr 07 06:11:09 2003 +0000"
      },
      "message": "[zebra 18626] move zebra socket paths to configure.ac\n\nmoved definition of the various socket paths from the\nper daemon header files into configure.ac. it will set the paths to\nbe in the directory specified by --localstatedir\u003d\u003cprefix\u003e or\notherwise will try to guess as best it can ( a la pid file path\ndetection - which probably should try reference ${prefix} too).\n\nthe present hardcoded socket path, /tmp, isnt really correct. should\nbe in /var somewhere really.\n"
    },
    {
      "commit": "3a6440d756863b602cfaaf0259b71950e67b2a6e",
      "tree": "e341fb75541ab4bafbd817500add90923617f818",
      "parents": [
        "f6386eebb95769559d2c828b9b9d70c0ffd23b45"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Apr 07 06:02:17 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Apr 07 06:02:17 2003 +0000"
      },
      "message": "Remove auto* files from the repository.\nDevelopers working with the repository should have the appropriate tools.\nOut-of-sync files cause far too many problems with users as well as auto*\nscripts not being half as portable across systems as they ought to be.\nmake-dist exists for a reason.\nTodo: make the CVS snapshot script do make-dist, and use the resulting\ntarball as the snapshot.\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": "07661cb5a81a46c9a177bbc0d963a6a74fbbce43",
      "tree": "c6879c4d9bd2a70f929f5dc3261d89b1b0977f7c",
      "parents": [
        "1b5d019a115bcf69786c870feb93f685ce806ff0"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Mar 18 00:03:05 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Mar 18 00:03:05 2003 +0000"
      },
      "message": "Fix build for net-snmp\n"
    },
    {
      "commit": "1bb066bce556b41a9232810accc8823843d38c48",
      "tree": "4fb96083ba30c7d082e7e869b2e8980d387e3a21",
      "parents": [
        "283ae334e83d0801b7de0067fc8a34b8a43f7fd5"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Mar 17 01:18:55 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Mar 17 01:18:55 2003 +0000"
      },
      "message": "Update auto files.\nNo doubt builds will now break for everyone. (works here - autoconf 2.13)\n"
    },
    {
      "commit": "ccf3557b9b8b141e76ba0dc57ad9cf3de249674e",
      "tree": "d63e62051a6b222e1fbecc28fecb55e10b615afe",
      "parents": [
        "89b2cd20a3475655456edf47d77ef0b1dbd9cfd8"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Mar 01 11:42:20 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Mar 01 11:42:20 2003 +0000"
      },
      "message": "Sync to Zebra.org 20030301\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": "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": "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": "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": "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": "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": "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": "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": "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"
    }
  ]
}
