)]}'
{
  "log": [
    {
      "commit": "6f0e3f6e17687eb25b7b77c4fdc8324837d4700f",
      "tree": "8a94d9212060f0f2ee7cbd0079c2687eed7348dc",
      "parents": [
        "08d3d5b398ae81de7659509f159e814d1bbd4375"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Thu May 10 02:38:51 2007 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Thu May 10 02:38:51 2007 +0000"
      },
      "message": "[autoconf] bugs 162,303,178: Fix \u0027present but can not be compiled\u0027 warnings\n\n2007-05-09 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* configure.ac: sys/conf.h depends on sys/param.h, at least on\n\t  FBSD 6.2.\n\t  (bug #363) Should check for in_pktinfo for IRDP\n\n2006-05-27 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* configure.ac: General cleanup of header and type checks, introducing\n\t  an internal define, QUAGGA_INCLUDES, to build up a list of\n\t  stuff to include so as to avoid \u0027present but cant be compiled\u0027\n\t  warnings.\n\t  Misc additional checks of things missing according to autoscan.\n\t  Add LIBM, for bgpd\u0027s use of libm, so as to avoid burdening\n\t  LIBS, and all the binaries, with libm linkage.\n\t  Remove the bad practice of using m4 changequote(), just\n\t  quote the []\u0027s in the case statements properly.\n\t  This should fix bugs 162, 303 and 178.\n\t* */*.{c,h}: Update all HAVE_* to the standard autoconf namespaced\n\t  HAVE_* defines. I.e. HAVE_SA_LEN -\u003e HAVE_STRUCT_SOCKADDR_SA_LEN,\n\t* bgpd/Makefile.am: Add LIBM to bgpd\u0027s LDADD, for pow().\n"
    },
    {
      "commit": "41b36e9013111a6da812ca000e3b978282bd27a9",
      "tree": "11805d66de677613be7fe5e31626cfbbbbec78a6",
      "parents": [
        "3c0755dc9772deccff2ba6e9dc0511a9af2b9d1b"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Fri Dec 08 01:09:50 2006 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Fri Dec 08 01:09:50 2006 +0000"
      },
      "message": "[isisd] Fix compiler warnings and allow v4-only compilation\n\n2006-12-08 Hannes Gredler \u003channes@gredler.at\u003e\n\n\t* isis_adjacency.c: (isis_new_adj) Allow NULL snpa argument.\n\t* isis_pdu.c: (various) Update calls to isis_new_adj() to pass\n\t  NULL and use default.\n\t* (general) Add forward declarations where required.\n\t  Fix up const char *\u0027s.\n\t  Allow V4-only compilation.\n"
    },
    {
      "commit": "876b8be0ab24721e8f94d47dde022563f76db992",
      "tree": "60afcf14974d39a081b64c71191038701e73a3f5",
      "parents": [
        "98954844ae56d142e96341d5dff959ec5518111e"
      ],
      "author": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Sun Oct 15 23:35:57 2006 +0000"
      },
      "committer": {
        "name": "Paul Jakma",
        "email": "paul.jakma@sun.com",
        "time": "Sun Oct 15 23:35:57 2006 +0000"
      },
      "message": "[daemon startup] Add --dry-run/-C argument to daemons, to check config file syntax\n\n2006-10-04 Oliver Hookins \u003cohookins@gmail.com\u003e\n\n\t* bgpd/bgp_main.c: Add configuration check option, with\n\t\u0027-C\u0027 rather than \u0027-c\u0027 for consistency between daemons.\n\t* isisd/isis_main.c: ditto\n\t* ospf6d/ospf6_main.c: ditto\n\t* ospfd/ospf_main.c: ditto\n\t* ripngd/ripng_main.c: ditto\n\t* vtysh/vtysh_main.c: ditto\n\t* ripd/rip_main.c: Change the config check option to\n\t\u0027-C\u0027 and tidy up the code.\n\t* zebra/main.c: ditto\n\n2006-10-04 Stergiakis Alexandros \u003castergiakis@antcor.com\u003e\n\n\t* ripd/rip_main.c: This trivial patch introduces a new\n\t  command-line option \u0027-c\u0027, which instructs zebra/ripd\n\t  to check its configuration file for validity,\tprint\n\t  any error message, and then exit. This is useful when\n\t  the configuration file is edited by hand or otherwise,\n\t  and you simply want to validate it without any other\n\t  effect.\n\t* zebra/main.c: ditto\n"
    },
    {
      "commit": "d3092e7f226c48f7caeac22ad62f39e8d71d9e12",
      "tree": "a4ede38eeab47522eae40c929ed5a4a82d978df5",
      "parents": [
        "98fd1e61212ea98154e7cc4b6deed41a07794523"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jan 17 17:33:46 2006 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Jan 17 17:33:46 2006 +0000"
      },
      "message": "[zserv] fix up custom isisd and bgpd Zserv functions for new format.\n\n2006-01-17 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* bgp_nexthop.c: (zlookup_read*) convert to new Zserv format.\n\t  (zlookup_query_ipv6) ditto.\n\t  (bgp_import_check) ditto.\n\t* isis_zebra.c: (isis_zebra_route_add_ipv4) fix for new\n\t  zserv format.\n"
    },
    {
      "commit": "77b1cffe3b71c886152534b8507f00c7fcbd12c9",
      "tree": "c5eb056d6254172e741b65586d71e2e6c54fc094",
      "parents": [
        "4859e20c40070ea362627529c52f35de105acc44"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 20 02:15:50 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 20 02:15:50 2005 +0000"
      },
      "message": "[isisd] remove includes of common system headers.\n\n2005-11-20 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n        * (general) remove includes of very common system headers,\n          these are already picked up by zebra.h. Further, including\n          them before zebra.h messes up all our lovely (sarcasm)\n          autoconf\u0027d detecting of platform specific things. Recent\n          addition of stdint.h to configure.ac and zebra.h appears\n          particularly to throw up this problem.\n"
    },
    {
      "commit": "13fb40ac99823c405137a42d7666785fd7ac641a",
      "tree": "2332722bf346447bd5bfebf3fdc0fb97dc85502b",
      "parents": [
        "10fc9183686d9d7183949c9e74a1c51d98ddb67e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Oct 01 06:03:04 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Oct 01 06:03:04 2005 +0000"
      },
      "message": "\t* isis_adjacency.c: Stop expire timer while deleting adjacency.\n\t* isis_events.c: Stop pseudo LSP thread while resigning circuit from\n\t  level.\n\t* isis_route.c: Fix compiling with EXTREME_DEBUG. Mark route as not\n\t  in sync with zebra if it\u0027s changed.\n\t* isis_spf.c: Schedule route validating etc even if tent was empty.\n\t  It\u0027s probably because we just don\u0027t have any adjacencies.\n\t* isisd.c: Write minimum spf interval into configuration.\n"
    },
    {
      "commit": "10fc9183686d9d7183949c9e74a1c51d98ddb67e",
      "tree": "c2f5c4a32f0e062db0a1f7492d418dca92053134",
      "parents": [
        "6638c1ab3d4c0043a49a3a67768cccf4a23648dc"
      ],
      "author": {
        "name": "jardin",
        "email": "jardin",
        "time": "Sat Oct 01 00:09:39 2005 +0000"
      },
      "committer": {
        "name": "jardin",
        "email": "jardin",
        "time": "Sat Oct 01 00:09:39 2005 +0000"
      },
      "message": "2005-09-30 Vincent Jardin \u003cvincent.jardin@6wind.com\u003e\n\n\t* isis_route.c: fix EXTREME_DEBUG compilation\n"
    },
    {
      "commit": "ceacedba227e77156f92f7676b274c48a2817e8f",
      "tree": "f362ecc8f6f183347ebe45ab79727b54d2f527a6",
      "parents": [
        "e62178797d0ee5f326fd587b84ee965cf88833e4"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Sep 29 14:39:32 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Sep 29 14:39:32 2005 +0000"
      },
      "message": "2005-09-29 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* configure.ac: Add the test for Solaris least-privileges. Set\n\t  defines for whether capabilities are supported and whether of\n\t  the linux or solaris variety.\n\t  Add missing-prototypes, missing-declarations, char-subscripts\n\t  and cast-qual warnings to default cflags, cause Hasso enjoys warnings,\n\t  and we really should clean the remaining ones up. (ie isisd..).\n\t* (*/*main.c) Update the zebra_capabilities_t arrays in the various\n\t  daemons to match the changes made in lib/privs.h.\n\t* zebra.h: Solaris capabilities requires priv.h to be included.\n\t* privs.{c,h}: Add support for Solaris Least-Privileges.\n\t  privs.h: Reduce some of the abstract capabilities, which do\n\t  not have rough equivalents on both systems. Rename the net\n\t  related caps to _NET, as they should have been in first\n\t  place.\n\t  (zprivs_terminate) should take the zebra_privs_t as argument so\n\t  that it can update change pointer.\n\t  Add an additional privilege state, ZPRIVS_UNKNOWN.\n\t* privs.c: (various capability functions) Add\n\t  Solaris privileges variants.\n\t  (zprivs_state) Use privs.c specific generic types to\n          represent various capability/privilege related types, so that\n          each can be typedef\u0027d as appropriate on each platform.\n\t  (zprivs_null_state) static added, to hold the state the null\n\t  method should report (should be raised by default, and\n          LOWERED if zprivs_terminate has been called)\n          (zprivs_state_null) Report back the zprivs_null_state.\n          (cap_map) Make it able to map abstract capability to multiple\n          system capabilities.\n          (zcaps2sys) Map to abstract capabilities to multiple system\n          privileges/capabilities.\n          (zprivs_init) move capability related init to seperate\n\t  function, zprivs_caps_init.\n          (zprivs_terminate) ditto, moved to zprivs_caps_terminate.\n          Set the change_state callback to the NULL state, so the\n          user can continue to run and use the callbacks.\n"
    },
    {
      "commit": "3fdb2dd9dd8b4ab3517896092dd1b677d191adf9",
      "tree": "2f2bdff0a3797517100d0f1319cd3e46bb00f53f",
      "parents": [
        "d3d7474ba98f01e6d9994ff48c0b3a4331a8ef2a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:45:54 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:45:54 2005 +0000"
      },
      "message": "\t* *.c: Massive cleanup of lists loops. Stop abusing ALL_LIST_ELEMENTS.\n\t  Replace XMALLOC + memset with XCALLOC. Fix some indentation issues.\n\t  The only really significant change is simplified isis_delete_adj\n\t  function in isis_adjacency.c.\n"
    },
    {
      "commit": "d3d7474ba98f01e6d9994ff48c0b3a4331a8ef2a",
      "tree": "efa9e1f7f1e7fdb79f5374c78301218f2b68bc95",
      "parents": [
        "9551eea4465e0e3eaab7a133fc06705c8f36afc4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:30:51 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:30:51 2005 +0000"
      },
      "message": "\t* isis_dynh.c, isisd.h: Implement dynamic hostname cache cleanup.\n\t* isis_lsp.c: Refresh dynamic hostname in the cache while refreshing\n\t  topology LSP.\n"
    },
    {
      "commit": "9551eea4465e0e3eaab7a133fc06705c8f36afc4",
      "tree": "ec76ab7baa0cbea12f85fc162053715ede4fa4e9",
      "parents": [
        "c1a03d4774f8ecc30a21267469d48cb2276de48c"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:26:25 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 28 18:26:25 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Make topology generator generate TE TLVs if necessary.\n\t  Also take care of inserting dynamic hostname of topology TLVs into\n\t  cache.\n"
    },
    {
      "commit": "fac1f7cc8eaa750fa46985977a97e05e493228a2",
      "tree": "9cb300fd56261c38b51e621ccb72523ec7b4bf4a",
      "parents": [
        "82a8428c84df1b1e7a1be5a5114a5d9a6f2bc2c4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:26:26 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:26:26 2005 +0000"
      },
      "message": "\t* isis_spf.c: Changing cost from uint16_t to uint32_t. Unset\n\t  ISIS_ROUTE_FLAG_ACTIVE flag before running SPF.\n\t* isisd.[ch]: Separate route tables for different levels. SPF is done\n\t  separately, but in case of L1L2 area they have to be merged.\n\t* isis_zebra.c: Set/unset ISIS_ROUTE_FLAG_ZEBRA_SYNC flag correctly in\n\t  case of adding/removing IPv4 routes.\n\t* zebra_route.c: Rework route validating process. Merging L1 and L2\n\t  tables in case of L1L2 area.\n\n        In short - many changes to make SPF work more correctly, add/remove\n        to/from RIB also works now. It\u0027s still very far from perfect though.\n"
    },
    {
      "commit": "82a8428c84df1b1e7a1be5a5114a5d9a6f2bc2c4",
      "tree": "0a1c15480d52b36cb9144add9816849014881fb3",
      "parents": [
        "309ddb199aa4627e4597653ca12eb3bc8c20ab54"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:15:36 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:15:36 2005 +0000"
      },
      "message": "\t* isis_spf.[ch]: Added TE TLVs to the SPF process. It seems to work\n\t  mostly, but needs certainly much more testing, especially transition\n\t  situation.\n"
    },
    {
      "commit": "309ddb199aa4627e4597653ca12eb3bc8c20ab54",
      "tree": "a61c592c3fc18c39e43fa784e772d5dbd1221a89",
      "parents": [
        "81ad8f6a1040eaf9d4230bd63b71d85397660653"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:06:47 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 18:06:47 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Put correct metric info into TE TLV\u0027s. Wide metric is\n\t  used only if only wide metric style (extended TLV\u0027s) is in use.\n"
    },
    {
      "commit": "81ad8f6a1040eaf9d4230bd63b71d85397660653",
      "tree": "93ccfab5fe8ca9d9e79b65aed0e359ab21f0a1c1",
      "parents": [
        "aa4376ec0c37b9b2d484e9503ad7b8e1a010afd2"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:58:24 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:58:24 2005 +0000"
      },
      "message": "\t* isis_tlv.[ch]: New function tlv_add_in_addr() to put just one IPv4\n\t  address into TLV. Used for IPv4 address TLV (in case of LSP) and TE\n\t  router ID TLV.\n\t* isis_lsp.c: Use tlv_add_in_addr() and include router ID in LSP.\n"
    },
    {
      "commit": "aa4376ec0c37b9b2d484e9503ad7b8e1a010afd2",
      "tree": "a8a31d251e7601adb0c5a2e08cd4c6b03104c1b4",
      "parents": [
        "ea3be4c12223b00a69652a8be330961489212447"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:39:48 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:39:48 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Support for originating TE IS and IPv4 TLV\u0027s. No any sub\n\t  TLV handling yet.\n"
    },
    {
      "commit": "ea3be4c12223b00a69652a8be330961489212447",
      "tree": "900f18472ddbbd9f2c418771a5d8525d0a8b24b0",
      "parents": [
        "f21fb27298fd49ce695fd403e02bcbd5e9f0cd27"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:11:12 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:11:12 2005 +0000"
      },
      "message": "\t* isis_tlv.[ch]: Two new functions - tlv_add_te_is_neighs() and\n\t  tlv_add_te_ipv4_reachs() to handle TLV\u0027s with new metric. None of\n\t  them handle sub TLVs though for now.\n"
    },
    {
      "commit": "f21fb27298fd49ce695fd403e02bcbd5e9f0cd27",
      "tree": "b0d3bc891908d7291f0315cf582334c1e85d37df",
      "parents": [
        "2984d26eb08f42a8f470277cef6c1657f984e968"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:05:55 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 17:05:55 2005 +0000"
      },
      "message": "\t* isis_circuit.[ch]: Some preliminary support for specifying wide\n\t  circuit metrics. Needs more thinking though, but should do for now.\n"
    },
    {
      "commit": "2984d26eb08f42a8f470277cef6c1657f984e968",
      "tree": "94066fba1723bbc2ea9badaf2dc09ae9f7948a57",
      "parents": [
        "ffe543af88fca1d8be49c3a3fe2f50b02919c689"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 16:49:07 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 26 16:49:07 2005 +0000"
      },
      "message": "\t* isisd.[ch]: Introduce oldmetric flag for area and transition\n\t  metricstyle command. With metricstyle wide only extended TLVs\n\t  should be used.\n"
    },
    {
      "commit": "ffe543af88fca1d8be49c3a3fe2f50b02919c689",
      "tree": "9eac072d987227d11689443e4446ce2c82f79017",
      "parents": [
        "d24af186ea5a964300d93bb6fb4384911153d9d6"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 25 12:04:25 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 25 12:04:25 2005 +0000"
      },
      "message": "\t* dict.[ch]: Revert all nonfunctional changes. It\u0027s external module\n\t  imported from kazlib and it\u0027s better not to screw it - there is\n\t  theoretical chance that we might want to merge changes from upstream\n\t  at some point. Also avoid the loss of info about upstream version\n\t  (rcsid).\n"
    },
    {
      "commit": "3d54927678139c580fd3029c17e7d8a94b3a60f7",
      "tree": "5c7fd8ec889f67e5bc206cee4fbc12eaa5ee3762",
      "parents": [
        "ebf1ead0326bf18293c24ee151d22071e8bebc10"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 21 18:52:14 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 21 18:52:14 2005 +0000"
      },
      "message": "\t* isis_route.c: Fix output of nexthops in case of extreme debug.\n"
    },
    {
      "commit": "f06834b80504497824ce50b533ba4fedb6abf2c7",
      "tree": "65a379aa4cc493ae9e547be740a3169d86206586",
      "parents": [
        "e6a4feb763749ff0c63558db456e617915fd1386"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 10:44:04 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 10:44:04 2005 +0000"
      },
      "message": "\t* isis_lsp.c, isis_pdu.c, isis_spf.c: Remove some old unused code.\n"
    },
    {
      "commit": "96e30387f164148fe47da6d4481283a61d761c97",
      "tree": "d22600c92bf5d3f8d38c57c39646842e78e5d4dd",
      "parents": [
        "72b9c956e2e025d24cf1e55a5e17ba34942a6ee3"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 06:35:47 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 06:35:47 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Better output of detailed LSP printout and fixed TE IPv4\n\t  reachibility metric display.\n"
    },
    {
      "commit": "72b9c956e2e025d24cf1e55a5e17ba34942a6ee3",
      "tree": "a27533f2aae630e7a5c6ab2b1f6f198afa328763",
      "parents": [
        "f1082d1934fae86e67b13594d2b506d1147f022f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 06:02:34 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 06:02:34 2005 +0000"
      },
      "message": "\t* isis_tlv.h: Cleanup comment about TLVs we should support, remove info\n\t  about useless (in sense of IP(v6)) TLVs.\n"
    },
    {
      "commit": "f1082d1934fae86e67b13594d2b506d1147f022f",
      "tree": "60b02841edb8ef9c82b279d7c255b19d77389d5c",
      "parents": [
        "4eda93ab0bb51da95f239b9e7eaecf8487ef4424"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 04:23:34 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 19 04:23:34 2005 +0000"
      },
      "message": "\t* isis_lsp.h: Added backpointer to the area from LSP. For now it\u0027s used\n\t  only in generated topology LSPs.\n\t* isisd.[ch]: Cleanup CLI commands related to topology generation and\n\t  added command to specify base fo dynamic hostname for topology LSPs.\n\t* isis_lsp.c: Rewrite almost all code related to generation topology\n\t  LSPs (top_lsp_refresh(), generate_topology_lsps() and\n\t  build_topology_lsp_data() functions). Topology is connected to own\n\t  LSP now (lsp_build_nonpseudo). Commented out lsppdu_realloc\n\t  functions, it\u0027s not used any more hopefully.\n\n\tTopology generation feature is actually useful now.\n"
    },
    {
      "commit": "4eda93ab0bb51da95f239b9e7eaecf8487ef4424",
      "tree": "4913dafddd31a0c2e16e6887d01179982e3d6fcf",
      "parents": [
        "e6a0bf9ca05b5543d0d21045ce939598c4e79887"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 18 17:51:02 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 18 17:51:02 2005 +0000"
      },
      "message": "\t* isis_lsp.c (lsp_update): Fix previous commit - manipulate the right\n\t  database and only if LSP is really in the database (sanity check).\n"
    },
    {
      "commit": "a96d8d1095da09811e343a534f5801a948ae1061",
      "tree": "572fdf17817de64a85cda87d15f3b0da8640c6b5",
      "parents": [
        "53a6f932032a30625358414ae0f77790656ccaca"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 16 14:44:23 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 16 14:44:23 2005 +0000"
      },
      "message": "\t* isis_lsp.c (lsp_update): Remove LSP from database before updating\n\t  its data and put it back after. Database entry MUST contain at least\n\t  correct pointers to the sysid to get correct compare results.\n\t* isis_lsp.[ch], isis_pdu.c: Pass level to the lsp_update() function.\n"
    },
    {
      "commit": "c89c05dd04d097bd8213125a42d67204bb681de5",
      "tree": "b8bde80fab9ea45f035edcb71ce1795abcb039c8",
      "parents": [
        "c0fb2a52150ece6042181ab49fafc12b3ba07870"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 04 21:36:36 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 04 21:36:36 2005 +0000"
      },
      "message": "\t* *.c: Try to be less verbose by default (without any debug options\n\t  on).\n\t* isis_lsp.c (lsp_build_nonpseudo): Use stream_reset() instead of\n\t  touching endp directly.\n\t* isis_lsp.c (lsp_build_pseudo): Ditto.\n"
    },
    {
      "commit": "c0fb2a52150ece6042181ab49fafc12b3ba07870",
      "tree": "bb150096a736c9800816dbeccd35fd7669151dd1",
      "parents": [
        "be7d65d976f3e6f9d24b0e77064444ae69b74e1d"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Sep 03 16:29:40 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Sep 03 16:29:40 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Yet another regression introduced by stream cleanup.\n\t  Similar fix to the one commited to lsp_build_nonpseudo() some days\n\t  ago.\n"
    },
    {
      "commit": "be7d65d976f3e6f9d24b0e77064444ae69b74e1d",
      "tree": "a71758e3b3ad796ae62823ea8aa16f6eb55e952c",
      "parents": [
        "29e50b23530f37df9073808fe78a6c22f00beeea"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 02 01:38:16 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 02 01:38:16 2005 +0000"
      },
      "message": "\t* isis_lsp.c: Less TLV leaking.\n"
    },
    {
      "commit": "29e50b23530f37df9073808fe78a6c22f00beeea",
      "tree": "c6461b12ec92d0ba5dc776a16510dc2695c6587a",
      "parents": [
        "aac372f4f5b617a579dafeab31fb486a5d69d65d"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 01 18:18:47 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 01 18:18:47 2005 +0000"
      },
      "message": "\t* random.c, spgrid.[ch]: Fix warnings with hope that I didn\u0027t broke\n\t  anything. These floats to longs and vice versa casts are starnge\n\t  indeed.\n\t* isis_pdu.c: As we don\u0027t use %z for size_t for now because we support\n\t  older compilers, cast them to unsigned long.\n\n\tAlso fix previous changelog entry. Isisd compiles cleanly now again.\n"
    },
    {
      "commit": "aac372f4f5b617a579dafeab31fb486a5d69d65d",
      "tree": "9aac3362db19f195238b8508761e82f2d6b8a370",
      "parents": [
        "deba35508e28a3861bb182218bb51af6769b2581"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 01 17:52:33 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 01 17:52:33 2005 +0000"
      },
      "message": "\t* isis_adjacency.c, isis_lsp.c, isisd.c: Replace XMALLOC \u0026\u0026 memset\n\t  with XCALLOC.\n\t* isis_lsp.c (lsp_build_pseudo): Fix adding ES neighbour.\n\t* isis_tlv.c: More compact free_tlvs() function.\n\t* isis_lsp.c (lsp_build_nonpseudo) : Try to fix one more regression\n\t  introduced by stream cleanup. Seek enp to the right place before\n\t  starting to fill stream with TLVs.\n"
    },
    {
      "commit": "56b24f4c33d2dc093922945319da02c7cbdadd2b",
      "tree": "c04bb9cc0ecaffd0b03fb8b9a3044b62a1b6037b",
      "parents": [
        "7d7d0f3848283fea7efd6cfeddcfa588c229fb3a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Aug 16 20:58:12 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Aug 16 20:58:12 2005 +0000"
      },
      "message": "\t* isis_misc.[ch]: Fix some warnings, making some strings const.\n"
    },
    {
      "commit": "6204c7fb9e6bc2ca1ec72b46af4e3f575d5dd41c",
      "tree": "8170eecbd840d858efb3cad0fae2290d0249955e",
      "parents": [
        "e0170882dbfa33b86316d38e8024e1114fa1db0a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Aug 10 15:08:21 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Aug 10 15:08:21 2005 +0000"
      },
      "message": "\t* topology/spgrid.c: MAXLONG is deprecated, use LONG_MAX instead.\n\t  values.h, where MAXLONG is defined, is deprecated as well.\n\n\tThanks to Greg for noticing and to Rivo for fix.\n"
    },
    {
      "commit": "e7fe02fd717a4c62373f3c46a4439e28b43c7dab",
      "tree": "3ba9923c9cab86808a226f15f9a6c1481f9e433e",
      "parents": [
        "b6b7cff22df912938f6cfd755dcad8cf915be2d0"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu May 26 11:30:38 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu May 26 11:30:38 2005 +0000"
      },
      "message": "\t* isis_dr.c: Fix copy\u0026paste error in isis_dr_resign().\n\n\t[backport candidate]\n"
    },
    {
      "commit": "92c9f2229fea8fdef31a701d36d7df91f3e9905d",
      "tree": "66c1c5df86c8d7bf1ef05e39505898eaf3919f98",
      "parents": [
        "8176c19f6104c6fa6bee88618b41719938fb42cc"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 25 12:21:13 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 25 12:21:13 2005 +0000"
      },
      "message": "2005-05-25 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* isisd.c: (show_isis_generated_topology) change to _RO version\n\t  of list macro. remove the extra listnode variable. one of the\n\t  macros had had incorrect number of arguments.\n"
    },
    {
      "commit": "15935e9ae1619288f0f78fcc0dac15c1c25d41c6",
      "tree": "5a12ca48a8d3619f634134744abb0cf6e5f9a589",
      "parents": [
        "0dab930314e215a627f848ffa824ed995eb2e13c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 03 09:27:23 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 03 09:27:23 2005 +0000"
      },
      "message": "2005-05-03 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* (general) More cleaning up of stream abuse, isisd should be\n\t  back to previous functionality. Replace various XMALLOC+memset\u0027s\n\t  with XCALLOC\n\t* isis_tlv.c: (tlv_add_padding) use stream_put to clear the stream\n\t  rather than forward endp, as isisd reuses streams.\n\t* isis_pdu.c: (process_lsp) cleanup direct reference to stream endp\n\t  (send_lsp) manual copy of a stream cleaned up to use stream_copy.\n\t* isis_network.c: (isis_recv_pdu_bcast) replace direct memcpy with\n\t  stream_write\n\t  (isis_recv_pdu_p2p) replace recvfrom directly into stream with\n\t  stream_recvfrom. Remove dangerous and now unneeded manual update\n\t  of endp.\n\t  (isis_recv_pdu_bcast / non-GNU_LINUX) Replace direct memcpy with\n\t  stream_write.\n\t  (isis_recv_pdu_p2p) replace read direct into stream with\n\t  stream_read_try, and hence remove the manual update of endp.\n\t* isis_lsp.c: (lsp_update_data) manual stream dup replaced with\n\t  stream_dup.\n\t  (lsppdu_realloc) mempcy into stream data replaced with stream_put.\n\t  (lsp_build_nonpseudo) remove mysterious stream_forward_endp\u0027s -\n\t  which were originally stream_set_putp - shouldn\u0027t be needed\n\t  now that all the manual fiddling of private stream data has been\n\t  corrected.\n\t  (build_topology_lsp_data) remove unneeded twiddling of endp,\n\t  appears to be due to lsppdu_realloc(), but it appears to sort of\n\t  do the right thing wrt streams.\n"
    },
    {
      "commit": "f482ed4d13e73c27424a45e4c8cfaaa363a35d89",
      "tree": "8fb0396cda1dcfa0de5d18b824b354b7ad7f1d07",
      "parents": [
        "9e67dc2723e86956dade42f5846d5c05334af041"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Apr 15 22:12:51 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Apr 15 22:12:51 2005 +0000"
      },
      "message": "2005-04-15 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* topology/Makefile.am: random.c is a source of libtopology, so list\n\t  it.\n"
    },
    {
      "commit": "5d6e26910b6790e7ea759893c16e9f0e380fcc1e",
      "tree": "448de93ef1b876b3460c6a18f7402775da9f7e12",
      "parents": [
        "c75494ca286c23d065f6a1ea147016b934ef9646"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 12 14:48:19 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Apr 12 14:48:19 2005 +0000"
      },
      "message": "\t* isis_adjacency.c: Fix typo introduced with listloop cleanup.\n"
    },
    {
      "commit": "634f9ea20fce82c94407cb677b5487b65bde1973",
      "tree": "32db82e4ae3b0f409d6d06a0fda401f9d5df5cc9",
      "parents": [
        "dfb9a545f8e3500e6a99518193872f526c1f56ba"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Mon Apr 11 15:51:40 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Mon Apr 11 15:51:40 2005 +0000"
      },
      "message": "2005-04-11 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\tImplement non-blocking zclient I/O with buffering.\n\t* zclient.h (struct zclient): Add two fields to support non-blocking\n\t  I/O: struct buffer *wb, and struct thread *t_write.\n\t  (zclient_free): Remove function.\n\t  (zebra_redistribute_send): Change 2nd arg from socket fd to\n\t  struct zclient * (needed to support non-blocking I/O and buffering).\n\t  (zclient_send_message): New function to send an arbitrary\n\t  message with non-blocking I/O.\n\t* zclient.c (zclient_new): Create write buffer.\n\t  (zclient_free): Remove unused function.\n\t  (zclient_stop): Must cancel new t_write thread.  Also, reset\n\t  all buffers: ibuf, obuf, and wb.\n\t  (zclient_failed): New helper function for typical error handling.\n\t  (zclient_flush_data): New thread to flush queued data.\n\t  (zclient_send_message): New function to send the message in\n\t  zclient-\u003eobuf to zebra using non-blocking I/O and buffering.\n\t  (zebra_message_send, zapi_ipv4_route, zapi_ipv6_route): Use\n\t  new zclient_send_message function instead of calling writen.\n\t  (zclient_start): Set socket non-blocking.  Also, change 2nd arg\n\t  to zebra_redistribute_send from zclient-\u003esock to zclient.\n\t  (zebra_redistribute_send): Change 2nd arg to struct zclient *.\n\t  Can now use zclient-\u003eobuf to assemble the message instead of\n\t  allocating a temporary stream.  And call zclient_send_message to\n\t  send the message instead of writen.\n\t  (zclient_read): Convert to support non-blocking I/O by using\n\t  stream_read_try instead of deprecated stream_read.\n\t  (zclient_redistribute): Change 2nd arg to zebra_redistribute_send\n\t  from zclient-\u003esock to zclient.\n\t* ospf6_zebra.c (ospf6_zebra_redistribute, ospf6_zebra_no_redistribute):\n\t  Change 2nd arg to zebra_redistribute_send from zclient-\u003esock\n\t  to zclient.\n\t* ospf_zebra.c (ospf_zebra_add): Call zclient_send_message instead\n\t  of writen.\n\t* rip_zebra.c (rip_redistribute_set, rip_redistribute_unset,\n\t  rip_redistribute_clean): Change 2nd arg to zebra_redistribute_send\n\t  from zclient-\u003esock to zclient.\n\t* ripng_zebra.c (ripng_redistribute_unset, ripng_redistribute_clean):\n\t  Change 2nd arg to zebra_redistribute_send from zclient-\u003esock\n\t  to zclient.\n\t* bgp_zebra.c (bgp_redistribute_set, bgp_redistribute_unset):\n\t  The 2nd arg to zebra_redistribute_send is now zclient instead of\n\t  zclient-\u003esock.\n\t* isis_zebra.h (isis_zebra_finish): Remove declaration of unused\n\t  function.\n\t* isis_zebra.c (isis_zebra_route_add_ipv4): Call zclient_send_message\n\t  to send the message to zebra instead of calling writen directly, since\n\t  zclient_send_message understands non-blocking I/O and will manage\n\t  the buffer queue appropriately.\n\t  (isis_zebra_finish): Remove unused function, particularly since\n\t  the zclient_free function has been removed.\n"
    },
    {
      "commit": "a8f03df06c2740a730e80218c13c6a1afd050c4e",
      "tree": "9b53a4db49df5d12ad9bf1b2bf1bfebb6ecb813d",
      "parents": [
        "57a1477bc7138649a51277cd52616eb05d438187"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 10 15:58:10 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 10 15:58:10 2005 +0000"
      },
      "message": "2005-04-10 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* Makefile.am: topology should not be a conditional SUBDIR,\n\t  otherwise make dist breaks.\n\t* topology/Makefile.am: remove EXTRA_DIST of files which dont\n\t  exist in that directory, broke make dist.\n\t* isisd.c: (show_isis_generated_topology_cmd) convert LIST_LOOP\n\t* isis_lsp.c: (generate_topology_lsps) ditto\n\t  (build_topology_lsp_data) ditto\n"
    },
    {
      "commit": "1eb8ef2584833f18fb674e127d59cb5a7f771482",
      "tree": "f5b09d4781de9a9b08839fefb6530e64d2d2ec31",
      "parents": [
        "5920990fecba7e2430af3cfaa8bcbaed40d0ba1a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Apr 07 07:30:20 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Apr 07 07:30:20 2005 +0000"
      },
      "message": "2005-04-07 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* (global): Fix up list loops to match changes in lib/linklist,\n\t  and some basic auditing of usage.\n\t* configure.ac: define QUAGGA_NO_DEPRECATED_INTERFACES\n\t* HACKING: Add notes about deprecating interfaces and commands.\n\t* lib/linklist.h: Add usage comments.\n\t  Rename getdata macro to listgetdata.\n\t  Rename nextnode to listnextnode and fix its odd behaviour to be\n\t  less dangerous.\n\t  Make listgetdata macro assert node is not null, NULL list entries\n          should be bug condition.\n          ALL_LIST_ELEMENTS, new macro, forward-referencing macro for use\n          with for loop, Suggested by Jim Carlson of Sun.\n          Add ALL_LIST_ELEMENTS_RO for cases which obviously do not need the\n          \"safety\" of previous macro.\n\t  LISTNODE_ADD and DELETE macros renamed to ATTACH, DETACH, to\n\t  distinguish from the similarly named functions, and reflect their\n\t  effect better.\n\t  Add a QUAGGA_NO_DEPRECATED_INTERFACES define guarded section\n\t  with the old defines which were modified above,\n\t  for backwards compatibility - guarded to prevent Quagga using it..\n\t* lib/linklist.c: fix up for linklist.h changes.\n\t* ospf6d/ospf6_abr.c: (ospf6_abr_examin_brouter) change to a single\n\t  scan of the area list, rather than scanning all areas first for\n\t  INTER_ROUTER and then again for INTER_NETWORK. According to\n\t  16.2, the scan should be area specific anyway, and further\n\t  ospf6d does not seem to implement 16.3 anyway.\n"
    },
    {
      "commit": "bd88bf499a02e3364b06ad269bd7009a0227f91b",
      "tree": "1d6ab75ab800fb2329604ec721f7c95f50752eb4",
      "parents": [
        "018546e9656b141eeecdf59f627fcdc9b7381840"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Apr 02 23:09:52 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Apr 02 23:09:52 2005 +0000"
      },
      "message": "2005-04-02 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* isis_zebra.c: (isis_zebra_if_del) Must use if_lookup_by_name_len.\n"
    },
    {
      "commit": "f695b01ff8e9aebc46bdf41f104ad4abbb0ef59e",
      "tree": "1a36e624a6577780a49f6ae2c8e0534140d33943",
      "parents": [
        "a47d98f4b7d6e3c1f5298912672f7b4d55a203f0"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Apr 02 19:03:39 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Apr 02 19:03:39 2005 +0000"
      },
      "message": "\t* configure.ac: Add --enable-isis-topology to enable isisd topology\n\t  generator code.\n\t* isisd/Makefile.am: Variables to handle conditonal compiling of\n\t  topology generator code.\n\t* isisd/isis_lsp.c: lsppdu_realloc() is used by topology generator.\n\t* isisd/isisd.c: Rename show_isis_topology_cmd to not conflict the one\n\t  in the isis_spf.c.\n\t* isisd/isisd.h: Remove TOPOLOGY_GENERATE define, it will be defined in\n\t  toplevel config.h if topology generator is enabled.\n\t* isisd/topology/Makefile.am: Handle the libtoolized Quagga libraries.\n"
    },
    {
      "commit": "d2fc88962a9a494ecb34167871bb9e7273a25d33",
      "tree": "304a1c1a744972bc10b1f677a134907c404b361d",
      "parents": [
        "386e61502d391adb985ac1487825349ec85e6a8c"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Apr 02 18:38:43 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Apr 02 18:38:43 2005 +0000"
      },
      "message": "2005-04-02 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\tFix problems when netlink interfaces are renamed (same ifindex used\n\tfor a new interface).  Start cleaning up some problems with the way\n\tinterface names are handled.\n\t* interface.c: (if_new_intern_ifindex) Remove obsolete function.\n\t  (if_delete_update) After distributing the interface deletion message,\n\t  set ifp-\u003eifindex to IFINDEX_INTERNAL.\n\t  (if_dump_vty) Detect pseudo interface by checking if ifp-\u003eifindex is\n\t  IFINDEX_INTERNAL.\n\t  (zebra_interface) Check return code from interface_cmd.func.\n\t  Do not set internal ifindex values to if_new_intern_ifindex(),\n\t  since we now use IFINDEX_INTERNAL for all pseudo interfaces.\n\t* kernel_socket.c: (ifm_read) Fix code and comments to reflect that\n\t  all internal interfaces now have ifp-\u003eifindex set to IFINDEX_INTERNAL.\n        * rt_netlink.c: (set_ifindex) New function used to update ifp-\u003eifindex.\n\t  Detects interface rename events by checking if that ifindex is already\n\t  being used.  If it is, delete the old interface before assigning\n\t  the ifindex to the new interface.\n\t  (netlink_interface, netlink_link_change) Call set_ifindex to update\n\t  the ifindex.\n\t* if.h: Remove define for IFINDEX_INTERNBASE and add define\n\t  IFINDEX_INTERNAL 0, since all internal (i.e. non-kernel) pseudo-\n\t  interfaces should have ifindex set to 0.\n\t  (if_new) Remove function.\n\t  (if_delete_retain) New function to delete an interface without\n\t  removing from iflist and freeing the structure.\n\t  (ifname2ifindex) New function.\n\t* if.c: (if_new) Remove function (absorb into if_create).\n\t  (if_create) Replace function if_new with call to calloc.\n\t  Set ifp-\u003eifindex to IFINDEX_INTERNAL.  Fix off-by-one error\n\t  in assert to check length of interface name.  Add error message\n\t  if interface with this name already exists.\n\t  (if_delete_retain) New function to delete an interface without\n\t  removing from iflist and freeing the structure.\n\t  (if_delete) Implement with help of if_delete_retain.\n\t  (ifindex2ifname) Reimplement using if_lookup_by_index.\n\t  (ifname2ifindex) New function to complement ifindex2ifname.\n\t  (interface) The interface command should check the name length\n\t  and fail with a warning message if it is too long.\n\t  (no_interface) Fix spelling in warning message.\n\t  (if_nametoindex) Reimplement using if_lookup_by_name.\n\t  (if_indextoname, ifaddr_ipv4_lookup) Reimplement using\n\t  if_lookup_by_index.\n\t* bgp_zebra.c: (bgp_interface_delete) After deleting, set ifp-\u003eifindex\n\t  to IFINDEX_INTERNAL.\n\t* isis_zebra.c: (isis_zebra_if_del) Call if_delete_retain instead\n\t  of if_delete, since it is generally not safe to remove interface\n\t  structures.  After deleting, set ifp-\u003eifindex to IFINDEX_INTERNAL.\n\t  (zebra_interface_if_lookup) Tighten up code.\n\t* ospf6_zebra.c: (ospf6_zebra_if_del) Previously, this whole function\n\t  was commented out.  But this is not safe: we should at least update\n\t  the ifindex when the interface is deleted.  So the new version\n\t  updates the interface status and sets ifp-\u003eifindex to\n\t  IFINDEX_INTERNAL.\n\t  (ospf6_zebra_route_update) Use if_indextoname properly.\n\t* ospf_vty.c: (show_ip_ospf_interface_sub) Show ifindex and interface\n\t  flags to help with debugging.\n\t* ospf_zebra.c: (ospf_interface_delete) After deleting, set ifp-\u003eifindex\n\t  to IFINDEX_INTERNAL.\n\t  (zebra_interface_if_lookup) Make function static.  Tighten up code.\n\t* rip_interface.c: (rip_interface_delete) After deleting, set\n\t  ifp-\u003eifindex to IFINDEX_INTERNAL.\n\t* ripng_interface.c: (ripng_interface_delete) After deleting, set\n\t  ifp-\u003eifindex to IFINDEX_INTERNAL.\n"
    },
    {
      "commit": "2d58228ecabb23b064e8a06e6241cf0d7e5ca785",
      "tree": "443509e8113598c7dadaa5e9cdbb153c147d0ffe",
      "parents": [
        "17eff7cb9010c0ba386ab801c220811ded4242b3"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 28 15:29:07 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 28 15:29:07 2005 +0000"
      },
      "message": "\t* configure.ac, */Makefile.am: Fix previous commit. SNMP includes\n\t  must be after lib/ includes in some systems. Introduce SNMP_INCLUDES\n\t  for that.\n"
    },
    {
      "commit": "c3d26c72982bc95906afb58fb46f1268bc915a3b",
      "tree": "ddc01377553107b384acef1879201d6216780fac",
      "parents": [
        "12f6ea2300402c821595297ff0c2c75055e50031"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 07 08:54:41 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Mar 07 08:54:41 2005 +0000"
      },
      "message": "\t* isis_spf.c: host.name might be NULL.\n\n\t[backport candidate]\n"
    },
    {
      "commit": "cdb6ee94bc2b9d1b66cfa1adcc5acaccbd648e0f",
      "tree": "e2ddd54488f20a3402ce94fcc4fb337fb883f61c",
      "parents": [
        "5c33349b3efff36a6acd36c6600b61e7cc2dbffc"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Feb 23 15:48:32 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Feb 23 15:48:32 2005 +0000"
      },
      "message": "2005-02-23 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* {vty.h,vty.c}: Remove vty_finish (duplicate of vty_reset).\n\t* isis_main.c: (reload) Call vty_reset instead of vty_finish (both\n\t  functions were exactly the same).\n"
    },
    {
      "commit": "9985f83ce7102f64b15f744b60320f8d14a8a5ff",
      "tree": "344629bdc2b4a7d53b8d7ca1705c9be2ca282d18",
      "parents": [
        "083ee9d9cdbf72a452b9af96e62d0625ea712cd9"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Feb 09 15:51:56 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed Feb 09 15:51:56 2005 +0000"
      },
      "message": "2005-02-09 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* (global) Update code to match stream.h changes.\n\t  stream_get_putp effectively replaced with stream_get_endp.\n\t  stream_forward renamed to stream_forward_getp.\n\t  stream_forward_endp introduced to replace some previous\n\t  setting/manual twiddling of putp by daemons.\n\t* lib/stream.h: Remove putp. Update reference to putp with endp.\n\t  Add stream_forward_endp, which daemons were doing manually.\n\t  Rename stream_forward to stream_forward_getp.\n\t  lib/stream.c: Remove/update references to putp.\n\t  introduce stream_forward_endp.\n"
    },
    {
      "commit": "92365889d1f856f323af452bad76f54c15ccdf45",
      "tree": "b2f01cd133b1f185d5d3e3c7f088310ff9aff621",
      "parents": [
        "6f2c27af2189794187e4c30ee70fcb9cc6cb1a3b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Jan 18 13:53:33 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Jan 18 13:53:33 2005 +0000"
      },
      "message": "\t* *.c: Changed many functions to static. Some commented out\n\t  functions and some tiny related fixes. No functional changes.\n"
    },
    {
      "commit": "cee66491371403453dc1c2a2424683976d22e640",
      "tree": "763df575b7e5486dd9407056a7f5f35caecfda46",
      "parents": [
        "b1b57e2b835ded16e6615723e10d67ed2e0b9c5e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 21:12:56 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 21:12:56 2005 +0000"
      },
      "message": "More cleanup in isisd.\n"
    },
    {
      "commit": "b1b57e2b835ded16e6615723e10d67ed2e0b9c5e",
      "tree": "463abd1febe6c792eb94de5c1bdcabfe9348a859",
      "parents": [
        "39f476f9f63fb084bbd1a4f2eb3a77b7ff1a626a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 21:02:13 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 21:02:13 2005 +0000"
      },
      "message": "Move TODO items from isid to the common TODO.\n"
    },
    {
      "commit": "39f476f9f63fb084bbd1a4f2eb3a77b7ff1a626a",
      "tree": "ebeb4f20194ee85dfd25a34d9b11704824f5c877",
      "parents": [
        "1cbc562b0c9f849639e2d95718ad823f6bc7877f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 20:49:21 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 20:49:21 2005 +0000"
      },
      "message": "There is no need to keep this directory.\n"
    },
    {
      "commit": "1cbc562b0c9f849639e2d95718ad823f6bc7877f",
      "tree": "5342d496488c56aeb34ab12f26e5ad2dd9865d92",
      "parents": [
        "3dc56b5bd3fa2aacc427505feaa9cd1366e7ebe8"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 10:29:51 2005 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sat Jan 01 10:29:51 2005 +0000"
      },
      "message": "Make authentication of SNPs work correctly - ie. conditionally like it is in\nIOS.\n"
    },
    {
      "commit": "b30c5e67a20b1a092faa56fe349171eb1da386b0",
      "tree": "9bc23b582e4c159ae41310cf1900b2e42f932af2",
      "parents": [
        "d44debedf53b85c989b72fe7c6924ffc1e7e625b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 29 20:06:41 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 29 20:06:41 2004 +0000"
      },
      "message": "Really fix crashes now. Revert isis_circuit_update_params() part of previous\ncommit. Replace all if_is_up() calls with if_is_operative().\n"
    },
    {
      "commit": "4660687a38034d60296fbc9e82aae772011c407f",
      "tree": "5a0d7caea1ba0958c8f9780da038654ce4f10fed",
      "parents": [
        "1d69fdf645d8434e8e1488f8bf0c73613df09da9"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 29 19:34:22 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 29 19:34:22 2004 +0000"
      },
      "message": "Don\u0027t crash during interface up/down events.\n"
    },
    {
      "commit": "529d65b3db6a2a79cbdf9ca3a1aa915ce5776286",
      "tree": "bc51f1350daf8c8f47cd87478f416ba812cfcff9",
      "parents": [
        "2b70200c5797ca60acf2011fe62f33fa161be54b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Dec 24 00:14:50 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Dec 24 00:14:50 2004 +0000"
      },
      "message": "zlog_* cleanup. Level of debug messages to LOG_DEBUG.\n"
    },
    {
      "commit": "274a4a4447b13f89f8237156a887d05a24a73cc6",
      "tree": "d5c2c6ee94bb77ef4346bcc07834808a75210bfd",
      "parents": [
        "5e76477456ce8bc4a1eeaccb5c5e1d3d99ab1300"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Tue Dec 07 15:39:31 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Tue Dec 07 15:39:31 2004 +0000"
      },
      "message": "2004-12-07 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* bgp_main.c: (main) The 2nd argument to openzlog has been removed.\n\t* isis_main.c: (main) The 2nd argument to openzlog has been removed.\n\t* ospf6_main.c: (main) The 2nd argument to openzlog has been removed.\n\t  Note that stdout logging will no longer be enabled by default when\n\t  not running as a daemon.\n\t* ospf_main.c: (main) The 2nd argument to openzlog has been removed.\n\t* rip_main.c: (main) The 2nd argument to openzlog has been removed.\n\t* ripng_main.c: (main) The 2nd argument to openzlog has been removed.\n\t* main.c: (main) The 2nd argument to openzlog has been removed.\n\t  So stdout logging will no longer be enabled by default.\n\t* irdp_main.c: (irdp_finish) Reduce severity of shutdown message\n\t  from LOG_WARNING to LOG_INFO.\n\t* vtysh.c: Make several functions static instead of global.\n\t  Added several commands to support destination-specific logging levels.\n\t  (vtysh_completion) This function is unused, so comment it out.\n\t* basic.texi: Document new logging features.  Separate basic config\n\t  commands from basic VTY commands.\n\t* log.h: Replace struct zlog flags and maskpri fields with maxlvl\n\t  array to support individual logging levels for each destination.\n\t  Remove the 2nd argument to openzlog since the default logging config\n\t  should be standardized inside the library.  Replaced the\n\t  zlog_set_flag and zlog_reset_flag functions with zlog_set_level.\n\t  And zlog_set_file now requires an additional log_level argument.\n\t  Declare zlog_proto_names for use inside command.c in the\n\t  \"show logging\" command.  Added defines useful for command\n\t  construction.\n\t* log.c: (vzlog) Decide where to send the message based on the\n\t  individual logging levels configured for each destination.\n\t  Remove support for ZLOG_STDERR since it was never actually used.\n\t  Support record-priority for terminal monitors.\n\t  (zlog_signal,zlog_backtrace_sigsafe) Support destination-specific\n\t  logging levels.  Remove stderr support (was never used).  Added\n\t  support for terminal monitor logging.\n\t  (_zlog_assert_failed) Increase message severity to LOG_EMERG.\n\t  (openzlog) Remove 2nd argument since default config should be\n\t  standardized in library.  By default, terminal monitoring\n\t  is set to debug, and all other logging is disabled.\n\t  (zlog_set_flag,zlog_reset_flag) Removed.\n\t  (zlog_set_level) New function to replace zlog_set_flag and\n\t  zlog_reset_flag.  Supports destination-specific logging levels.\n\t  (zlog_set_file,zlog_reset_file) Support file-specific logging level.\n\t  (zlog_rotate) Log an error message if fopen fails, and support\n\t  new file-specific logging level.\n\t* command.h: Change DEFUN_CMD_FUNC_DECL and DEFUN_CMD_FUNC_TEXT so that\n\t  command functions will be static instead of global.  Remove\n\t  declarations for config_exit and config_help.  Define new macros\n\t  DEFUNSH_ATTR, DEFUNSH_HIDDEN, and DEFUNSH_DEPRECATED so we can\n\t  have deprecated commands in vtysh.  Similarly, for completeness,\n\t  define macros ALIAS_SH, ALIAS_SH_HIDDEN, and ALIAS_SH_DEPRECATED.\n\t  Also, fix bug in ALIAS_ATTR macro (didn\u0027t matter because it\n\t  was never used).\n\t* command.c: Make many functions static instead of global.\n\t  (facility_name,facility_match,level_match) New functions\n\t  to support enhanced destination-specific logging levels.\n\t  (config_write_host) Support new destination-specific logging levels.\n\t  (config_logmsg) Added new \"logmsg\" command to help test logging\n\t  system.\n\t  (show_logging) Added \"show logging\" command to show the current\n\t  configuration of the logging system.\n\t  (config_log_stdout_level) Support explicit stdout logging level.\n\t  (no_config_log_stdout) Now takes optional LEVEL arg.\n\t  (config_log_monitor,config_log_monitor_level,no_config_log_monitor)\n\t  New commands creating new \"log monitor\" commands to set terminal\n\t  monitoring log level.\n\t  (config_log_file_level) Support explicit file logging level.\n\t  (config_log_syslog_level) Support explicit syslog logging level.\n\t  (config_log_facility,no_config_log_facility) Implement new\n\t  \"log facility\" command.\n\t  (cmd_init) Add hooks for new commands: \"show logging\", \"logmsg\",\n\t  \"log stdout \u003clevel\u003e\", \"log monitor\", \"log monitor \u003clevel\u003e\",\n\t  \"no log monitor\", \"log file \u003cfilename\u003e \u003clevel\u003e\",\n\t  \"no log file \u003cfilename\u003e \u003clevel\u003e\", \"log syslog \u003clevel\u003e\",\n\t  \"log facility\", and \"no log facility\".\n\t* vty.h: Added a \"level\" argument to vty_log so it can support\n\t  \"log record-priority\".  Declare new function vty_log_fixed for\n\t  use in signal handlers.\n\t* vty.c: (vty_log,vty_log_out) Added a \"level\" argument to support\n\t  \"log record-priority\" for vty terminal monitors.\n\t  (vty_down_level) Use config_exit_cmd.func instead of calling\n\t  config_exit directly (since command functions will now be static\n\t  instead of global).\n\t  (vty_log_fixed) New function to send terminal monitor messages\n\t  from inside a signal handler.\n"
    },
    {
      "commit": "887c44a4f3d8219dc5b1c52b5dcde1f31d52b73d",
      "tree": "5c0ef5fe1d3948c56e6abf2ffd3c9811e92f0f2e",
      "parents": [
        "bec595ada58ebfa98ad49220f29ab28b58549094"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Fri Dec 03 16:36:46 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Fri Dec 03 16:36:46 2004 +0000"
      },
      "message": "2004-12-03 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* bgp_main.c: (sigint) Use zlog_notice for termination message.\n\t  (main) Use zlog_notice for startup announcement.\n\t* isis_main.c: (sigint,sigterm) Use zlog_notice for termination message.\n\t  (terminate) This function should be static, not global.\n\t  (main) Use zlog_notice for startup announcement, and remove\n\t  ifdef ZEBRA_VERSION.\n\t* version.h.in: Remove declaration for pid_output_lock, this function\n\t  is now static, not global.\n\t* pid_output.c: (pid_output_lock) This function should be static, not\n\t  global.  And remove \"old umask\" error message, since it was really\n\t  an unimportant debug message, not an error.\n\t  (pid_output) Need to declare static function pid_output_lock.\n\t* ospf6_main.c: (sigint,sigterm) Use zlog_notice for termination\n\t  message.\n\t  (main) Remove commented-out call to pid_output_lock (which should\n\t  never be called other than from inside pid_output).  And use\n\t  zlog_notice to print the startup message, which now includes\n\t  the vty port.\n\t* ospf_main.c: (sigint) Use zlog_notice for termination message.\n\t  (main) Issue a startup announcement using zlog_notice.\n\t* rip_main.c: (sigint) Use zlog_notice for termination message.\n\t  (main) Add a startup announcement using zlog_notice.\n\t* ripng_main.c: (sighup) Remove spurious terminating message.\n\t  (sigint) Use zlog_notice for termination message.\n\t  (main) Issue a startup announcement using zlog_notice.\n\t* main.c: (sigint) Use zlog_notice for termination message.\n\t  (main) Add a startup announcement using zlog_notice.\n"
    },
    {
      "commit": "c065230a4c617a1cdf8813dd25384bcc9591f61a",
      "tree": "42285fe5604e43ada3b53ac9a77ba1e3c4464b52",
      "parents": [
        "accb156b9b1c3f4b46ab01f8850200f450fc40d8"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Nov 25 19:33:48 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Nov 25 19:33:48 2004 +0000"
      },
      "message": "Make group to run daemon as configurable. Fixes #2 from Bugzilla #64.\n"
    },
    {
      "commit": "cee3df1e4b1b8103bf81e5281a46aab7881f93df",
      "tree": "40d7cc8c22da9634739256a9d577b140b41730b8",
      "parents": [
        "b9e0ee31864c94c729fb6b6f6b2ccbc79dbcd474"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Nov 24 17:14:49 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Nov 24 17:14:49 2004 +0000"
      },
      "message": "2004-11-24 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* zassert.h: New header file to declare a quagga-specific assert macro.\n\t* log.c: (_zlog_assert_failed) New function called when assert fails\n\t  to log the error and abort.\n\t* zebra.h: Include \"zassert.h\" instead of \u003cassert.h\u003e.\n\t* regex.c: Include \"zassert.h\" instead of \u003cassert.h\u003e.\n\t* dict.c: Include \"zassert.h\" instead of \u003cassert.h\u003e.\n"
    },
    {
      "commit": "6099b3b56956322567323c11fd698b2328c6826b",
      "tree": "fa537bd0eaa9f7d824f39445eabc928db59050ca",
      "parents": [
        "ae5e24d8678f1e3a60dde58d3382c5ba73d6bb27"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Nov 20 02:06:59 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sat Nov 20 02:06:59 2004 +0000"
      },
      "message": "2004-11-19 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* global: Replace strerror with safe_strerror.  And vtysh/vtysh.c\n\t  needs to include \"log.h\" to pick up the declaration.\n"
    },
    {
      "commit": "3c035aa8716efa6f677e43435c5eb9bac6825518",
      "tree": "ea28fd6b6beadd72d3619315dc66ee0d03a3f7d3",
      "parents": [
        "e064d6d9c3c3319c62fe4fac3e4e5f7a1941a98c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Nov 02 18:59:49 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue Nov 02 18:59:49 2004 +0000"
      },
      "message": "- Add .arch-ids and .arch-inventory to cvsignore, to allow one to use arch\n  with CVS trees.\n"
    },
    {
      "commit": "c729c65010a11f011ebae654fa1a8444c7443c10",
      "tree": "490d99736a94f28aa69f31a9447dd18b3329abc8",
      "parents": [
        "ddd85ed1af88068939cee36a43125ff8ad50cf79"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Oct 13 08:36:47 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Oct 13 08:36:47 2004 +0000"
      },
      "message": "Initialize access lists here as well.\n"
    },
    {
      "commit": "f90a5f6f1a6c1c1a4199a87a6202fe3edc9f7520",
      "tree": "6ab4dd093298c0c8d68b854fc6400374cbd054f2",
      "parents": [
        "98b718a9d2aa7a3324c553944e26914fe090b87a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Oct 11 13:11:56 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Oct 11 13:11:56 2004 +0000"
      },
      "message": "Sync isisd with changes in lib.\n"
    },
    {
      "commit": "2e864cfa12724ec20e82f0a24e1be5929e3a0cef",
      "tree": "f97da1d907f31be08f392d27ebb2842ccc92e2c9",
      "parents": [
        "8a676be30c275bcbe1a3de08c0c942a606caef2e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:40:24 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:40:24 2004 +0000"
      },
      "message": "Argh, fix typo.\n"
    },
    {
      "commit": "1b1214273edec92affb7260b62eefed233f54d37",
      "tree": "13e202884324afe5b2716c2a1777a2881262e3ee",
      "parents": [
        "5973ee73f0931d666a733afad8b198ca3b050592"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:27:23 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 06:27:23 2004 +0000"
      },
      "message": "Although we don\u0027t look at current directory for config any more, it\u0027s nice\nto have modified config file here for development.\n"
    },
    {
      "commit": "1cd80845dc5262ff7d3d38deb1921f0b8390f4df",
      "tree": "fc41aebc4470a8467663ccdc6dcc4b91edb75769",
      "parents": [
        "54ade99658ea95bf9207b5547fe6a7b97e64c97a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Oct 07 20:07:40 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Oct 07 20:07:40 2004 +0000"
      },
      "message": "No warnings here any more.\n"
    },
    {
      "commit": "18a6dce6f83dd20caf1f36c8e840868ff0bf6dbd",
      "tree": "ff832cbf6fe2b239bde06268820587bec671ae6d",
      "parents": [
        "a49c0ff6771975eeb1bd7da923a9dc830200cf65"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Oct 03 18:18:34 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Oct 03 18:18:34 2004 +0000"
      },
      "message": "Common router id.\n"
    },
    {
      "commit": "aa0b9f912dc1057261fa02fbf5d458f222900af6",
      "tree": "cc78e152912504db7645ed8b985f34462dc44ed4",
      "parents": [
        "d09da92a227105285206ff84f82b325a1e8a7d67"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 28 15:05:56 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 28 15:05:56 2004 +0000"
      },
      "message": "I think that it\u0027s better to report bugs into Bugzilla.\n"
    },
    {
      "commit": "e082ac1dc672b39b219d233775e6467634177f62",
      "tree": "e5c5b686371454fa13ae2b81cdb72006ef84e8ba",
      "parents": [
        "6a99f83175d7b5b5868fb82328d569672b8bb9a4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 27 18:13:57 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 27 18:13:57 2004 +0000"
      },
      "message": "This code didn\u0027t survive valgrinding. I wonder how it survived normal run.\n"
    },
    {
      "commit": "0dae85e67ada6044ce895b3e64a3a223776eab5b",
      "tree": "8cc72db376fbf4f046d1fc5c084b41cfc8d54d4c",
      "parents": [
        "4289546d79a9d5be800c1c0ec31e82cc8a92a04b"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 19:53:47 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 19:53:47 2004 +0000"
      },
      "message": "Brown paperbag please. Fix previous commit.\n"
    },
    {
      "commit": "f7c43dcbbc44e2098728f9849d152d9b6df97a5d",
      "tree": "b0a244f23dc7f1d9414d7a92316f7f83e3103c5b",
      "parents": [
        "1af8193311192ec1bd2a4d2769e0e9b90bc1609f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:24:14 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:24:14 2004 +0000"
      },
      "message": "Compiler warnings fixes.\n"
    },
    {
      "commit": "c83dcd3f81ed21c72ad50e56a6c515c7eacac44c",
      "tree": "666a12f12974b60e04057f89a229ec2f8fb11076",
      "parents": [
        "73d1aeada73abf3ca803aea074a1da5c264bf86e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 15:42:44 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 15:42:44 2004 +0000"
      },
      "message": "Compile with gcc-4.0.\n"
    },
    {
      "commit": "73d1aeada73abf3ca803aea074a1da5c264bf86e",
      "tree": "3abea0ade03efc70d7d0b9892543cf1bf41edba7",
      "parents": [
        "26f7a244d0f7e6a658cc48b88613b6919a6f5fbe"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 24 10:45:28 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 24 10:45:28 2004 +0000"
      },
      "message": "* isisd.c: thread_master *master is already defined in isis_main.c.\n* isis_misc.[c|h], isis_lsp.[c|h]: Move static variables out of header\n  files.\n"
    },
    {
      "commit": "52dc7ee65f8d887b0730abc0a5d44d27fc6ecafd",
      "tree": "a557339540c56dd3953c29a50ca0e48c1911efc8",
      "parents": [
        "44983cf8a9c587dfbcad294b9dfe4dccbb68ba98"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 23 19:18:23 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Sep 23 19:18:23 2004 +0000"
      },
      "message": "Remove usage of evil list and listnode typedefs.\n"
    },
    {
      "commit": "d9c427b21a5509a940178dedebec625bd7a9640a",
      "tree": "26e51a185fc6940bdbe1b4a193fcc08a0a64813d",
      "parents": [
        "6785157b6509c83a39db4ad78c60b8ab00914673"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 21 14:23:01 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 21 14:23:01 2004 +0000"
      },
      "message": "Yet another DIS election fix from LIU Xin - update dis_record of\nadjacencies when isisd becomes DIS.\n"
    },
    {
      "commit": "6785157b6509c83a39db4ad78c60b8ab00914673",
      "tree": "d0c8fba9a5770102bd86c903118510aa908ada06",
      "parents": [
        "a211d65dfda5ae4028ec7bb524f85f3f4bae24c2"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 21 14:17:04 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 21 14:17:04 2004 +0000"
      },
      "message": "Make \"C\" vendor routers happy - put correct prefix addresses into\nreachability TLV\u0027s. Somehow it wasn\u0027t problem for \"J\" vendor routers.\n"
    },
    {
      "commit": "a211d65dfda5ae4028ec7bb524f85f3f4bae24c2",
      "tree": "a166f2d4d75c55a6eaf3439c91488a2d34eeab16",
      "parents": [
        "12a5cae75ef639e416d82b88d887c5d77d279aa3"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 20 14:55:29 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Mon Sep 20 14:55:29 2004 +0000"
      },
      "message": "2004-09-20 LIU Xin \u003clx at ns.6test.edu.cn\u003e\n* isis_dr.c, isis_events.c: Remove hello multiplier usage while scheduling\n  DIS election.\n* isis_pdu.c: Don\u0027t call isis_event_dis_status_change() whenever\n  l[1|2]_desig_is is different from hdr.lan_id.\n"
    },
    {
      "commit": "12a5cae75ef639e416d82b88d887c5d77d279aa3",
      "tree": "e59d6a398d6a0bd3eae6d4ab0d0f7ffb6bad5273",
      "parents": [
        "0b3acf4f94241905ff36df5c1d9f9f389e45d191"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 19 19:39:26 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 19 19:39:26 2004 +0000"
      },
      "message": "Rework of SPF threads schedule logic. I\u0027m not 100% sure whether it\u0027s right\nthing to do to have completely separate threads for IPv4 and IPv6 SPF\nthough. But it works and it\u0027s now possible to have both IPv4 and IPv6\nenabled in interface. One bug fixed in LSP regeneration scheduling as well.\n"
    },
    {
      "commit": "bf731011ef7038f5766432fec862301c123d4736",
      "tree": "0761db5a6c161bc6c46421c138de8f4e8cbb5140",
      "parents": [
        "2852de1c90d5bc72493bcdfb8b6df8b24ff2e9d4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 17 07:59:57 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 17 07:59:57 2004 +0000"
      },
      "message": "Another great little fix from LIU Xin.\n"
    },
    {
      "commit": "90f0c88123d2e65d8853230a108964b37138e2b0",
      "tree": "c6c42371a7df4337cec0ff202b37fff70352821d",
      "parents": [
        "53c997c90d7e20313bfb07d15d83b782d7a6530e"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 15 21:46:55 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 15 21:46:55 2004 +0000"
      },
      "message": "There is several new RFCs ...\n"
    },
    {
      "commit": "53c997c90d7e20313bfb07d15d83b782d7a6530e",
      "tree": "6f3299d7bd9a8d3be6914cc7a34acfc2ea2e9071",
      "parents": [
        "bbc9ce2aa3985f3df242d2be49ebcc2bc6dd7f3a"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 15 16:21:59 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Sep 15 16:21:59 2004 +0000"
      },
      "message": "Second part of fixes from Laurent Rabret.\n"
    },
    {
      "commit": "f891f4438d65e93d5a8224b1b579c9c089c91c27",
      "tree": "3d88a45a47f84fc81ca1e5cbb074df395fd44329",
      "parents": [
        "64a7afd6de67eebda09a6766aa27dbd722539363"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 14 13:54:30 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 14 13:54:30 2004 +0000"
      },
      "message": "Isisd is now able to remove addresses from circuit and trigger LSP updates\nif it\u0027s done. Some random fixes as well and update to sample configuration.\n"
    },
    {
      "commit": "64a7afd6de67eebda09a6766aa27dbd722539363",
      "tree": "484ef68fd5f186cb957852f136c8f5f1aeb364f6",
      "parents": [
        "ae399ab0cf6387385cc9958d64309a838467055f"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 14 11:05:13 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Sep 14 11:05:13 2004 +0000"
      },
      "message": "isis_pdu.c: Update l1_desig_is only if neighbor really is DIS.\n"
    },
    {
      "commit": "13c48f728080ebe3b20252e124f42f85d240770b",
      "tree": "685efc1bedf96153eaee42a9ed4c1dfce44c78ca",
      "parents": [
        "f390d2c7839c04100e4de8246215ce10ea96b653"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 10 21:19:13 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 10 21:19:13 2004 +0000"
      },
      "message": "Fixes from LIU Xin.\n"
    },
    {
      "commit": "f390d2c7839c04100e4de8246215ce10ea96b653",
      "tree": "9910d250bfb6605d44e7104ef786ba0c84ddb01a",
      "parents": [
        "f3f27f60fdfc81fce2944ee89087417b04935663"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 10 20:48:21 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Sep 10 20:48:21 2004 +0000"
      },
      "message": "Indentation only. No any functional changes.\n"
    },
    {
      "commit": "b7a97f825768bb3e617cb115540c74b65914e628",
      "tree": "7614897d5d668291f854b5283daf424b55a12853",
      "parents": [
        "33f92320e8a6b078a5972d05c8f49487d8edf19c"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Fri Jul 23 16:23:56 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Fri Jul 23 16:23:56 2004 +0000"
      },
      "message": "(somewhat unrelated cleanups, but all are very minor)\n\n2004-07-23  Greg Troxel  \u003cgdt@poblano.ir.bbn.com\u003e\n\n\t* */Makefile.am: Use ../dir/libfoo.la, rather than \"-L../dir\n\t-lfoo\", to avoid linking against installed libraries from a\n\tprevious version.\n\n\t* {lib,ospfd,ospfclient}/Makefile.am: explicitly define the shared\n\tlibrary version number to be 0.0\n\n\t* configure.ac: remove spurious , so extract.pl is chmod\u0027d +x.\n\n\t* HACKING: explain shared library versioning rules\n"
    },
    {
      "commit": "9f9aebdd152bb9ac3f020d21170c53dd0bcec71d",
      "tree": "1569971c28eea774b03c9119c83412a38e05c802",
      "parents": [
        "e01f9cbb87123217ac6d88c12ddb784fca9cc5b7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 09 17:52:39 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 09 17:52:39 2004 +0000"
      },
      "message": "cvsignore *.libs in build dirs\n"
    },
    {
      "commit": "e3bee3b4cdc3a9b108d7b331c99705ffdb071dc4",
      "tree": "7e6d84fc6454445596f88e24a5aa0beeeccfcb17",
      "parents": [
        "b06c14f2e7cac5a2170f9d64182a99dbbc413674"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 09 12:38:23 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Jul 09 12:38:23 2004 +0000"
      },
      "message": "Update cvsignore\u0027s for *.lo and *.la - libtool files\n"
    },
    {
      "commit": "87efd646ffef693235d9d29b005a1467373c51bd",
      "tree": "85d43e323abb1de6b1ddb6e889f9d580fdb8546d",
      "parents": [
        "f2bfdee5f9db5363fcd13763eca3fda729067d57"
      ],
      "author": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Jun 30 17:36:11 2004 +0000"
      },
      "committer": {
        "name": "gdt",
        "email": "gdt",
        "time": "Wed Jun 30 17:36:11 2004 +0000"
      },
      "message": "Add libtool support.\n\nlibzebra and libospfapiclient are now built shared, and linked shared\nwith the daemons.  This reduces the memory needed when running\nmultiple daemons; each daemon is at least 150k smaller.  Static\nlibraries are still built, and libtool should use them on platforms\nwhich don\u0027t have shared libaries.  As with autoconf, the user of a\ndistribution does not need libtool; one just needs that to build from\nCVS.\n\nlibospf.a is still a non-shared library, and still installed, not\nbecause that makese sense, but because I don\u0027t understand why it is\nthe way it is now.\n\nNote that the tree was tagged \u0027libtool-before\u0027 just before this commit.\n"
    },
    {
      "commit": "320ec10a24d8dd81d0aa011dc92e07877e4e02f8",
      "tree": "867cc29d5981b58bad9392cb7eb471daeb8250a1",
      "parents": [
        "6c0f9a782a7be49de53b5ae00980990d96edbf03"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Jun 20 19:54:37 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Jun 20 19:54:37 2004 +0000"
      },
      "message": "Removing code which looked at current dir for config file before attempting\nto read system one.\n"
    },
    {
      "commit": "d26ca6a976421b09ee6c4e5ac699075b6f549584",
      "tree": "447ea71cea6be30ec26194069e7d61acd211ba8a",
      "parents": [
        "074a917aeb16061440d932c1f3ffccd7afc475a1"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 15:25:35 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 15:25:35 2004 +0000"
      },
      "message": "CVS ignore Linux NFS silly-delete .nfs* files\n"
    },
    {
      "commit": "84016977c040611b3901e83b7eee436b982b51fb",
      "tree": "71b45139a8c5f34652b8b382223a7e320af513a9",
      "parents": [
        "5228ad27e2f3abe0ebb69f66607aedc048b94a13"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 07:51:08 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 07:51:08 2004 +0000"
      },
      "message": "Add .cvsignore for isisd/topology\n"
    },
    {
      "commit": "62843e433d8f85bce381edc6202c4af6c5cec31b",
      "tree": "f58d372dd6ac4c45073d1fd08620cdc9ffe3f1c2",
      "parents": [
        "00995cfcc9cb30afabb3242837753ab1eb7fdb85"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 18:45:03 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 18:45:03 2004 +0000"
      },
      "message": "Fixing crash fix attempt. It\u0027s still mess and logic is wrong and ... but at\nleast periodic spf works again.\n"
    },
    {
      "commit": "00995cfcc9cb30afabb3242837753ab1eb7fdb85",
      "tree": "fbfebfd74d22b29eb9b7bc279a4d6fd2beec4def",
      "parents": [
        "37da8c011408560eeaa74b2439192d36e16c19a4"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 13:43:50 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 13:43:50 2004 +0000"
      },
      "message": "Commit 100% working part of patch from Laurent Rabret ([quagga-dev 830]).\nAlso tiny temporary fix from me to spf thread crash. Will look at it later.\n"
    },
    {
      "commit": "37da8c011408560eeaa74b2439192d36e16c19a4",
      "tree": "38c7a0f93ec030bbb1cf4067713c69257ddbc662",
      "parents": [
        "3b4cd3a9e89a5aace04a6a756bd0d23b7108fd83"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 11:38:40 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed May 19 11:38:40 2004 +0000"
      },
      "message": "Make it compile in NetBSD and OpenBSD.\n"
    },
    {
      "commit": "0a5893596774554f039222c481d235de0f35d99e",
      "tree": "065ba74422d21193637d6e3f8b52c0eaa09a13bf",
      "parents": [
        "225282994d74f767058886475d80fee95d450eae"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 08 11:48:26 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 08 11:48:26 2004 +0000"
      },
      "message": "2004-05-08 Paul Jakma \u003cpaul@dishone.st\u003e\n\n       * bgp_zebra.c: (bgp_interface_address_add) sync to zclient changes\n         (bgp_interface_address_delete) ditto.\n         (bgp_zebra_announce) ditto.\n         (bgp_zebra_withdraw) ditto.\n       * isis_zebra.c: Sync with zclient changes.\n       * zclient.c (zapi_ipv4_route) Follow Sowmini\u0027s lead and describe\n         message format.\n       * ospf6_zebra.c: Sync to zclient changes\n       * ospf_zebra.c: Sync with lib/zclient changes\n       * rip_zebra.c: sync with zclient changes.\n       * rip_interface.c: ditto.\n       * ripng_{interface,zebra}.c: sync with zclient changes\n\n\n2004-05-08 Sowmini Varadhan \u003csowmini.varadhan@sun.com\u003e\n\n       * zclient.c: (zapi_ipv4_add) collapsed into zapi_ipv4_route\n         (zapi_ipv4_delete) ditto.\n         (zapi_ipv4_route) add/delete a route by way of cmd arg.\n         (zapi_ipv6_add) collapsed into zapi_ipv6_route.\n         (zapi_ipv6_delete) ditto.\n         (zapi_ipv6_route) add/delete a route by way of cmd arg.\n         (zebra_interface_address_delete_read) collapsed into\n         zebra_interface_address_read.\n         (zebra_interface_address_delete_read) ditto.\n         (zebra_interface_address_read) read address add/delete messages\n         by way of type argument. Describe command message format.\n         (zebra_interface_add_read) Unconditionally read new ifmtu6 field.\n         Describe command message format.\n         (zebra_interface_state_read) Unconditionally read new ifmtu6 field.\n         (zclient_redistribute_set) Collapsed into zclient_redistribute\n         (zclient_redistribute_unset) ditto\n         (zclient_redistribute) set/unset redistribution.\n         (zclient_redistribute_default_set) Collapsed into\n         zclient_redistribute_default.\n         (zclient_redistribute_default_unset) ditto.\n         (zclient_redistribute_default) Redistribute default set/unset.\n       * zclient.h: delete zapi_ipv{4,6}_add, zapi_ipv{4,6}_delete. Add\n         zapi_ipv{4,6}_route. delete zclient_redistribute_set/unset. Add\n         zclient_redistribute. Ditto for\n         zclient_redistribute_default_{set/unset}.\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": "c3aac6ff4f67d2dff5288e55be1853abc61f40e5",
      "tree": "017cce5798630505ad0daa3a92f5b078515fda8a",
      "parents": [
        "eb26037b73991750392c6deaad09f2fd7600ebee"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Feb 20 18:44:21 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Feb 20 18:44:21 2004 +0000"
      },
      "message": "Fix vty address handling and added pid file stuff.\n"
    }
  ],
  "next": "d70f99e15b7849f59b970bd62392ed42bda25ab6"
}
