)]}'
{
  "log": [
    {
      "commit": "c24d602e82d31a2fcbccb4cc3b66f8d0a79d5f22",
      "tree": "55abf96bbb7899029d542b0714e666159484dbb2",
      "parents": [
        "b29800a676b7c3cf00d8a4086b7783ccb7e2f29f"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 20 14:54:12 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Nov 20 14:54:12 2005 +0000"
      },
      "message": "2005-11-20 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n        * ospf_abr.c: (ospf_abr_announce_network_to_area) check\n          returned LSA of ospf_summary_lsa_refresh and print warning if\n          it failed.\n          (ospf_abr_announce_network_to_area) similar\n          (ospf_abr_announce_rtr_to_area) similar\n        * ospf_lsa.c: (ospf_router_lsa_new) check LSA returned is valid.\n          (ospf_router_lsa_originate) similar\n          (ospf_router_lsa_refresh, ospf_network_lsa_new) similar\n          (ospf_summary_lsa_new) Check ID is valid.\n          (ospf_summary_lsa_originate) ditto, and check returned LSA from\n           previous function is !NULL.\n          (ospf_summary_lsa_refresh) check ospf_summary_lsa_new return\n           is !NULL.\n          (ospf_summary_asbr_lsa_new) ID valid check.\n          (ospf_summary_asbr_lsa_originate) similar.\n"
    },
    {
      "commit": "88d6cf37f66c3b7d1abdaa20875418192d5219b8",
      "tree": "4843e77f622d3bf9e5df5c75de381e06e3126d6b",
      "parents": [
        "92779fe51dd061ab1502a9acdc0cf5241748e0c7"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Oct 29 12:50:09 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Oct 29 12:50:09 2005 +0000"
      },
      "message": "2005-10-29 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* (general) RFC3137 stub-router support\n\t* ospfd.h: Add OSPF_OUTPUT_COST_INFINITE define.\n\t  (struct ospf_master) Add a OSPF_MASTER_SHUTDOWN flag for\n\t  options, to allow shutdown to distinguish between complete\n\t  shutdown and shutdown of a subset of ospf instances.\n\t  (struct ospf)\n\t  Add stub_router_{startup,shutdown_}time, configuration of startup\n\t  and shutdown time for stub-router.\n\t  Add t_graceful_shutdown struct thread, timer for graceful\n\t  shutdown, if needed.\n\t  (struct ospf_area) Add stub_router_state - run time state of\n\t  stub-router for an area. Add flags for ADMIN, IS and WAS\n\t  states.\n\t  Add t_stub_router, timer thread to resend router-lsa for an\n\t  area.\n\t* ospf_lsa.c: (ospf_link_cost) new simple function to spit out\n\t  either the given lnks cost or infinite cost if stub-router is\n\t  in effect.\n\t  (lsa_link_{ptop,broadcast,virtuallink,ptomp}_set) use\n\t  previous function for transit-links.\n\t  (ospf_stub_router_timer) timer thread for end of startup stub\n\t  router. Change state as required for the area and setup\n\t  re-origination of router-lsa.\n\t  (ospf_stub_router_check) Check/do whether stub-router should be\n\t  enabled, and whether it requires timer to be setup.\n\t  (ospf_router_lsa_new) call previous function at top.\n\t  (ospf_router_lsa_originate) no external callers, made static.\n\t* ospf_lsa.h: (ospf_router_lsa_originate) removed.\n\t* ospf_main.c: (sigint) make static.\n\t  remove call to exit, as ospf_terminate now deals with\n\t  exiting.\n\t* ospf_route.c: (ospf_terminate) removed, now in ospfd.c.\n\t* ospf_vty.c: (show_ip_ospf_area) print out state of\n\t  stub-router, if active.\n\t  (show_ip_ospf) print out configuration of stub-router\n\t  support, and details of graceful-shutdown if the timer is\n\t  active.\n\t  ((no)?ospf_max_metric_router_lsa_{admin,startup,shutdown}) new\n\t  commands to (de-)?configure stub-router support.\n\t  (config_write_stub_router) write out config of stub-router.\n\t  (ospf_config_write) call previous.\n\t  (ospf_vty_init) install the new stub-router commands.\n\t* ospfd.c: various functions made static.\n\t  (ospf_new) Set defaults for stub-router. Graceful shutdown\n\t  is made to default on, just to be adventerous.\n\t  (ospf_graceful_shutdown_finish) new function, final part of\n\t  shutdown.\n\t  (ospf_graceful_shutdown_timer) timer thread wrapper for\n\t  graceful-shutdown.\n\t  (ospf_graceful_shutdown_check) check whether to setup timer\n\t  for shutdown or proceed directly to final shutdown.\n\t  (ospf_terminate) moved here from ospf_route.c, call\n\t  ospf_finish for each instance.\n\t  (ospf_finish) renamed to ospf_finish_final and made static.\n\t  (ospf_finish) new function, exported wrapper around\n\t  ospf_graceful_shutdown_check.\n\t  (ospf_finish_final) complete shutdown of an instance.\n\t  Add missing TIMER_OFF\u0027s of two timer threads.\n\t  (ospf_area_free) opaque self lsa timer should be turned off.\n"
    },
    {
      "commit": "5339cfdb7c3f6187452982173aa55ff525d1f6fe",
      "tree": "e7cd744e116040c7bc5f2823f8b73ea9e1316d7e",
      "parents": [
        "f06834b80504497824ce50b533ba4fedb6abf2c7"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Mon Sep 19 13:28:05 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Mon Sep 19 13:28:05 2005 +0000"
      },
      "message": "2005-09-19 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* ospf_lsa.h: (ospf_external_lsa_flush) Comment out the 5th argument\n\t  (nexthop) since it is not used in the function (except inside\n\t  some commented-out code).\n\t* ospf_lsa.c: (ospf_external_lsa_flush,ospf_external_lsa_refresh)\n\t  Comment out the 5th argument to ospf_external_lsa_flush.\n\t* ospf_asbr.c: (ospf_redistribute_withdraw) Comment out 5th arg\n\t  to ospf_external_lsa_flush.\n\t* ospf_vty.c: (no_ospf_default_information_originate) Eliminate 5th\n\t  uninitialized nexthop arg to ospf_external_lsa_flush.\n\t* ospf_zebra.c: (ospf_zebra_read_ipv4) Comment out 5th arg\n\t  to ospf_external_lsa_flush.\n\t* ospfd.c: (ospf_network_set) Comment out 5th arg\n\t  to ospf_external_lsa_flush.\n"
    },
    {
      "commit": "69310a679aef2b532f6851298b453eb7ca4d3534",
      "tree": "1c6a2f3520b0253ae7db42c776e69507c53192ef",
      "parents": [
        "d4e47287efd60f77b473f8d5677e4dac08c192b0"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 11 18:09:59 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Wed May 11 18:09:59 2005 +0000"
      },
      "message": "2005-05-11 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n\t* (general) Fix memory leaks in opaque AS-scope LSAs, reported and\n\t  with much debugging done by by scott collins \u003cscollins@agile.tv\u003e.\n\t  (possible backport candidate?)\n\t* ospf_lsa.c: (ospf_discard_from_db) dont call\n\t  ospf_ase_unregister_external_lsa for opaque-lsa\u0027s, opaques are\n\t  never registered with ase in the first place.\n\t* ospf_packet.c: (general) Disabuse opaque related code of its\n          tendency to try gather up things into temporary lists.\n          (ospf_ls_upd) remove the temporary lists opaque uses, call\n          opaque functions inline, just like all other types.\n          (ospf_ls_ack) ditto.\n          (ospf_recv_packet) fixup sign warning.\n        * ospf_opaque.c: (general) fix the unneeded use of lists, and\n          untwist some of the logic.\n          (ospf_opaque_self_originated_lsa_received) take a single LSA\n          as argument, not a list of them. Remove the list loop. Logic\n          otherwise unchanged.\n          (ospf_opaque_ls_ack_received) Mostly ditto. But untwist the logic,\n          move the actions up into the switch block, remove the goto\u0027s and\n          sanitise the logic near the end a bit.\n        * ospf_opaque.h: Adjust definitions of aforementioned functions\n          in ospf_opaque.c to match.\n"
    },
    {
      "commit": "4dadc291e56195886fd047690ded9686f4e013fa",
      "tree": "ea7c0690912d2b7d0c487f6855960e768fff1b6e",
      "parents": [
        "69e10adaf28d4e116c38db2648786557fe131828"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 06 21:37:42 2005 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 06 21:37:42 2005 +0000"
      },
      "message": "2005-05-06 Paul Jakma \u003cpaul.jakma@sun.com\u003e\n\n        * (general) extern and static qualifiers added.\n          unspecified arguments in definitions fixed, typically they should\n          be \u0027void\u0027.\n          function casts added for callbacks.\n          Guards added to headers which lacked them.\n          Proper headers included rather than relying on incomplete\n          definitions.\n          gcc noreturn function attribute where appropriate.\n        * ospf_opaque.c: remove the private definition of ospf_lsa\u0027s\n          ospf_lsa_refresh_delay.\n        * ospf_lsa.h: export ospf_lsa_refresh_delay\n        * ospf_packet.c: (ospf_make_md5_digest) make *auth_key const,\n          correct thing to do - removes need for the casts later.\n        * ospf_vty.c: Use vty.h\u0027s VTY_GET_INTEGER rather than ospf_vty\u0027s\n          home-brewed versions, shuts up several warnings.\n        * ospf_vty.h: remove VTY_GET_UINT32. VTY_GET_IPV4_ADDRESS and\n          VTY_GET_IPV4_PREFIX moved to lib/vty.h.\n        * ospf_zebra.c: (ospf_distribute_list_update_timer) hacky\n          overloading of the THREAD_ARG pointer should at least use\n          uintptr_t.\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": "9dbc797274ca5df614d61784658b8f809bbd8e2b",
      "tree": "97aa0b8f724e440a6bb12bc70b31c66b425b2a46",
      "parents": [
        "ed9bb6d524301cb7d1902ed94753ffa3c6dabf1e"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Mar 13 19:27:22 2005 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Sun Mar 13 19:27:22 2005 +0000"
      },
      "message": "2005-03-13 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* ospf_lsa.c: (ospf_lsa_refresh_walker) If the system clock jumps\n\t  backward, then current time may be less than\n\t  ospf-\u003elsa_refresher_started.  This was causing invalid values\n\t  for ospf-\u003elsa_refresh_queue.index resulting in infinite loops.\n\t  Problem fixed by casting the expression to unsigned before taking\n\t  the modulus.\n\n\t[backport candidate]\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": "fe71a97da23e2282bc92f647227d5c97c73e3bc8",
      "tree": "d812d9a1b98b0a1e9c1621194bf58dba097d6e3b",
      "parents": [
        "16f6511e94c3765725b196aacaf6053385bca8a3"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 22 16:16:02 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Wed Dec 22 16:16:02 2004 +0000"
      },
      "message": "Show sums of checksums in \"show ip ospf\" output. Okayed by Paul and James\nR. Leu (author of original idea).\n"
    },
    {
      "commit": "e588f21f2adae26eaee8789bacc3a45002e86e94",
      "tree": "35ec71ed8391ef0568b594a3f821d91b20a33c3c",
      "parents": [
        "60925303c585735b7d52252c00fa4a7340690f31"
      ],
      "author": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 08 18:12:06 2004 +0000"
      },
      "committer": {
        "name": "ajs",
        "email": "ajs",
        "time": "Wed Dec 08 18:12:06 2004 +0000"
      },
      "message": "2004-12-08 Andrew J. Schorr \u003cajschorr@alumni.princeton.edu\u003e\n\n\t* *.c: Change level of debug messages to LOG_DEBUG.\n"
    },
    {
      "commit": "3fb9cd6ef456959b6eff939d5c316f6785c2dda4",
      "tree": "e350cb3ef7b20b8bbccfb1aa9309152311e845bd",
      "parents": [
        "5ae35f45f1292dce3a01f241accafeb2e59b10cc"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Oct 19 19:44:43 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Tue Oct 19 19:44:43 2004 +0000"
      },
      "message": "OK. Here it is - PtP patch from Andrew J. Schorr. No problems with ospfd,\nripd might need some more testing though.\n"
    },
    {
      "commit": "eb1ce6059a00f3f0dd92c965aa5982907b54c00d",
      "tree": "ebd6583ba2f2f9909c25653d0349662e08c26ecf",
      "parents": [
        "2e864cfa12724ec20e82f0a24e1be5929e3a0cef"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 08:17:22 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Fri Oct 08 08:17:22 2004 +0000"
      },
      "message": "Compiler warnings fixes round 1.\n"
    },
    {
      "commit": "c9e52be3f4d98943b67fbbe5d9a7ccd823b88326",
      "tree": "d4045a946af3be8bbdc303162778e8c44057e2f9",
      "parents": [
        "e473b032b860444b9656cee1654b0120f77b52b1"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:09:34 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Sep 26 16:09:34 2004 +0000"
      },
      "message": "Compiler warnings fixes.\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": "beebba75167b33e05b5e02a41179ad0c13a0bcd7",
      "tree": "83b72a338e29f7f6cff2b83fd2c71e8615f9f8e5",
      "parents": [
        "320ec10a24d8dd81d0aa011dc92e07877e4e02f8"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Jun 20 21:00:27 2004 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Sun Jun 20 21:00:27 2004 +0000"
      },
      "message": "Remove ifdef\u0027s HAVE_NSSA. NSSA support is stable enough.\n"
    },
    {
      "commit": "553ff11329835054314f6c9ce61da7d3e2477b19",
      "tree": "11140105b2b1a6c70fd58601d7b6f9f609385152",
      "parents": [
        "8ba85bc0716e9823b12c48167781f81c7565977a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 09:41:00 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 06 09:41:00 2004 +0000"
      },
      "message": "2004-06-06 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * ospf_dump.c,ospf_lsa.c: Fix typos of merge of previous.\n          ospf_flood.c: (ospf_process_self_originated_lsa) fix zlog format.\n"
    },
    {
      "commit": "0c2be26c735870c28ec7985ca1d24d96ae63ae45",
      "tree": "a9bcbdbb3e46be5e2d335461fdf9c2c73a0ab505",
      "parents": [
        "dc0b5ce220387b3982d7120ce2273a9094e6a778"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 31 14:16:54 2004 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon May 31 14:16:54 2004 +0000"
      },
      "message": "2004-05-31 Sagun Shakya \u003csagun.shakya@sun.com\u003e\n\n        * ospf_dump.c: (ospf_lsa_header_dump) LOOKUP can return null if\n          index is out of range.\n          ospf_flood.c: endianness fix\n          ospf_lsa.c: Missing ntohl\u0027s on (struct lsa *)-\u003edata-\u003els_seqnum\n          in various places.\n"
    },
    {
      "commit": "7ddf1d6eaf5a339d13661469212ac33f77e808fc",
      "tree": "2c81cd578472f88adb7300589e05b4f267bf066b",
      "parents": [
        "2fe28bbb7bccedf2e486a8c0aaa43037c91b3336"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Oct 13 09:06:46 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Oct 13 09:06:46 2003 +0000"
      },
      "message": "2003-10-13 sowmini.varadhan@sun.com\n\n\t* ospf_lsa.h: Add OSPF_LSA_PREMATURE_AGE flag.\n\t* ospf_lsa.c: added better debug comments. check sequence number in\n\t  ospf_lsa_install. ospf_maxage_lsa_remover() checks for\n \t  OSPF_LSA_PREMATURE_AGE and re-originates the lsa after ls_acks are\n\t  received.\n\t* ospf_flood.c: improve debug statement- print ls_seqnum.\n"
    },
    {
      "commit": "8fc0f64b143ed2155567f5c9f0faad756252146a",
      "tree": "f857f7da18250fb709973afb2e66d28a3c6aafa8",
      "parents": [
        "7f809942dac3683794f3e9924d327b48be0fe852"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jul 13 01:36:06 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jul 13 01:36:06 2003 +0000"
      },
      "message": "2003-07-13 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* ospf_lsa.c: fix up some places where an NSSA specific define,\n\t  (OSPF_LSA_LOCAL_XLT) was referenced in if statements without being\n\t  ifdef\u0027ed by HAVE_NSSA.\n"
    },
    {
      "commit": "d4a53d583c56462864b2fce08b1cf94493c041ab",
      "tree": "d43535a754e3474669bdddc7e463c2146bdc25d3",
      "parents": [
        "22e0a9e6c7bd7775da6bfb00d9a4114643cf9369"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jul 12 21:30:57 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jul 12 21:30:57 2003 +0000"
      },
      "message": "2003-07-12 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* (global): Add/fixup NSSA ABR translation functionality\n\t* ospfd.h: Adjust the NSSA ROLE defines. Rename STATE to TRANSLATE.\n\t  Rename the LSA_NSSA_GET define to LSA_OPTIONS_NSSA_GET.\n\t* ospfd.c: Adjust to match changes to ospfd.h\n\t* ospf_te.c: Adjust to match change to LSA_NSSA_GET.\n\t* ospf_lsa.h: slights reformatting.\n\t  Add new NSSA functions, ospf_translated_nssa_compare() (not\n\t  currently used), ospf_translated_nssa_refresh() and\n\t  ospf_translated_nssa_originate().\n\t* ospf_lsa.c: Implemented aforementioned new functions. Fix up\n\t  several NSSA hooks to /not/ be called for Type-5s which are\n\t  translated. Add additional hooks. Set the ROUTER_LSA_NT bit in\n\t  router-lsa flags if ABR does translation. New function,\n\t  ospf_lsa_translated_nssa_new() implemented. Dont register\n\t  translated LSAs for refreshing - instead we implicitly rely on\n\t  the ASBR refreshing the Type-7, and refresh the translated Type-5\n\t  at the same time. Some minor reformatting. Extra debug info added.\n\t  Also, existing debug statements modified to report LSA Id.\n\t* ospf_flood.c: call ospf_translated_nssa_refresh() when refreshing\n\t  Type-7. minor reformatting.\n\t* ospf_dump.c: Dump NSSA LSAs.\n\t* ospf_asbr.h: slight reformatting. Export\n\t  ospf_external_route_lookup() (though, not used. probably will\n          undo this).\n        * ospf_abr.c: Slight reformatting in many places. Update to match\n          ospfd.h changes.\n          (ospf_abr_translate_nssa): make it work, using the new ospf_lsa\n\t  translation functions.\n\t  (Several places): change struct prefix * to struct prefix_ipv4 *.\n\t  (might as well do the casts at higher levels). Add more debug\n\t  info.\n\t  (ospf_abr_announce_stub_defaults): announce default to NSSA areas\n\t  too.\n\t  (ospf_abr_announce_nssa_defaults): do nothing. this function\n          probably should die. (see ospf_abr_announce_stub_defaults).\n\t  (ospf_abr_task_timer): run NSSA tasks.\n"
    },
    {
      "commit": "0c14ad88aab5df610acfe035385a7323e1683035",
      "tree": "bdea3bbb0c7827830912470d1d69656e81df9f85",
      "parents": [
        "9d5260374afc19e31eab72b9d1550e8b57c57dbe"
      ],
      "author": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jul 03 08:36:02 2003 +0000"
      },
      "committer": {
        "name": "hasso",
        "email": "hasso",
        "time": "Thu Jul 03 08:36:02 2003 +0000"
      },
      "message": "Don\u0027t install Type-7 LSA\u0027s into nonNSSA area.\n"
    },
    {
      "commit": "942b6c19895fb44041fcd4f588440619f61e6745",
      "tree": "274823fc3963e6d67ad07db2ee59bf782398db0f",
      "parents": [
        "2e6b0bbbb44f67bd5664e6dd52c7cd4ad9286c06"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 22 08:22:18 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Jun 22 08:22:18 2003 +0000"
      },
      "message": "2003-06-19 Paul Jakma \u003cpaul@dishone.st\u003e\n\n\t* ospf_lsa.c (router_lsa_flags): Set the correct flags for\n\t  router-lsa\u0027s. Eg OSPF_FLAG_ASBR is /not/ an LSA flag, its an\n\t  internal ospfd flag (just happens to have same value as\n\t  ROUTER_LSA_EXTERNAL). Set ROUTER_LSA_EXTERNAL for ASBRs,\n\t  ROUTER_LSA_BORDER for ABRs and ROUTER_LSA_NT for NSSA ABRs which\n\t  are OSPF_NSSA_ROLE_ALWAYS translators.\n"
    },
    {
      "commit": "d748032f10058182bcd10ca7fe244d6918b68f14",
      "tree": "316702bcbfc2771715240df9d91d77e45ab2c1ec",
      "parents": [
        "a4b70768b4d08683d16a1e8225411e429fb531d3"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 17:31:51 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri May 16 17:31:51 2003 +0000"
      },
      "message": "From: Hasso Tepper \u003chasso@estpak.ee\u003e\nSubject: [zebra 19091] [PATCH] NSSA fixes try2\n\nNSSA didn\u0027t work without problems even after my previous fixes. Seems\nthat I tracked down problems finally.\n"
    },
    {
      "commit": "843521964f801b1266e59df3b005b1b4bf48fdc7",
      "tree": "124517904db3902ce28a81d3a5398dac80fe2962",
      "parents": [
        "4fb949e3341c16e202c39400dc34bbc0902bbd7a"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 11 12:59:11 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun May 11 12:59:11 2003 +0000"
      },
      "message": "Fix merge error of Hasso\u0027s patch \"case case\" :)\n"
    },
    {
      "commit": "4fb949e3341c16e202c39400dc34bbc0902bbd7a",
      "tree": "d74a08a0a3b8aeaea0650c6c24a6913afeaba071",
      "parents": [
        "fba3d22b84cfe2ba39047c8fc67fe80469e8ef8e"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 10 20:06:51 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat May 10 20:06:51 2003 +0000"
      },
      "message": "From: Hasso Tepper\n\nFix removal of Type-7 LSAs, http://bugzilla.dishone.st/show_bug.cgi?id\u003d18\n"
    },
    {
      "commit": "ccd57affea4f10d2228612f702b4acb0fd974cbc",
      "tree": "4476005d79f636550e826773a58a2784cdcf5b99",
      "parents": [
        "5376b5efb22ad22d893498bd9d9aa8ef2f4a78d3"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 06 23:38:23 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 06 23:38:23 2003 +0000"
      },
      "message": "Reverting the NSSA maxage walker loop addition for now, until all the other\nproblems with NSSA are resolved, and we can determine whether this had any\npoint.\n"
    },
    {
      "commit": "5376b5efb22ad22d893498bd9d9aa8ef2f4a78d3",
      "tree": "5e49fc7aebb88b70b88410086263d9184a96309e",
      "parents": [
        "24cd435b1a24f8243da69dafa01286525f08291c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 06 23:31:38 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Tue May 06 23:31:38 2003 +0000"
      },
      "message": "NSSA /might/ be missing this. I\u0027m not sure.\nIt didnt solve a particular problem of Hasso\u0027s, but i\u0027m committing it just\nfor posterities sakes, so i dont lose it (i\u0027ll revert it immediately).\n"
    },
    {
      "commit": "645878f10fad10f3503da9103bc57bbd96785947",
      "tree": "1dad7dcf36c3bccd34c6cba4e158599cd665c9c4",
      "parents": [
        "e05fba43875e86ba2ec6e3970e5ec3aa2d0e040c"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 13 21:42:11 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 13 21:42:11 2003 +0000"
      },
      "message": "From: Hasso Tepper \u003chasso@estpak.ee\u003e\n To: zebra@zebra.org\nSubject: [zebra 18648] [PATCH] Selforiginated Type-7 LSA\u0027s are not flushed\n         from lsdb\n"
    },
    {
      "commit": "e05fba43875e86ba2ec6e3970e5ec3aa2d0e040c",
      "tree": "a04f2ab2869cb1915320ae9d30ff9d575ecee96e",
      "parents": [
        "f894c3ad34ca6f2fa35d7e8cc35db3134c184764"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 13 20:20:53 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sun Apr 13 20:20:53 2003 +0000"
      },
      "message": "Author: amir\nDate: 2003-04-10 14:32:31 +0200 (Thu, 10 Apr 2003)\nNew Revision: 212\n\nModified:\n   zebra-ag/trunk/ospfd/ospf_lsa.c\nLog:\nI\u0027ve fixed a small opaque lsa bug which got triggered when deleting opaque\nlsa of type 11. It used area-\u003eospf-\u003e.. when area was null. This was replaced\nby a ospf \u003d ospf_lookyp(); ospf-\u003e...\n"
    },
    {
      "commit": "1cc8f7624c3fad90196d566b46f03ab4e88f7d6b",
      "tree": "57e972ef7bae35f15f933af0cb67c48c4264627f",
      "parents": [
        "020709f9939c542e96b12f06522ad5e33d8cf445"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Apr 05 19:34:32 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Apr 05 19:34:32 2003 +0000"
      },
      "message": "Add tests for debug enabled to PtMP LSA creation functions\n"
    },
    {
      "commit": "020709f9939c542e96b12f06522ad5e33d8cf445",
      "tree": "767b3cb9a8a17913d8395c8d5ecf7485ae882b8e",
      "parents": [
        "d18258304a79b459fe768e63f27efd17aa1fa78f"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Apr 04 02:44:16 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Apr 04 02:44:16 2003 +0000"
      },
      "message": "2003-04-04 Paul Jakma \u003cpaul@dishone.st\u003e\n\n        * Sync to Zebra CVS\n        * Fix lib/thread.h leak\n        * Fix small Opaque LSA leak\n        * Do not configure OSPF interfaces for secondary addresses\n        * vtysh fixes from Hasso\n        * Dave Watson\u0027s missing ntohs fix\n"
    },
    {
      "commit": "d18258304a79b459fe768e63f27efd17aa1fa78f",
      "tree": "d731805699f7391f33a13933e4b522580573be0a",
      "parents": [
        "05351a28c06c0b27e6aeb7d3c7801123c0242476"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Apr 03 01:27:01 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Apr 03 01:27:01 2003 +0000"
      },
      "message": "From: David Watson \u003cdwatson@eecs.umich.edu\u003e\nSubject: [zebra 18573] PATCH ospfd: byte order error in assert statement\n\n I found a bug in the ospfd code tickled this morning by a Type 1\n LSA with exactly 62 entries (LSA length of 768, or 0x0300).\n A missing ntohs in ospf_lsa.c:ospf_lsa_different() causes an assert\n statement to fail, stopping ospfd.\n \u003e   assert (l1-\u003edata-\u003elength \u003e OSPF_LSA_HEADER_SIZE);\n So, a length of type 768 turns into a length of 3 which is\n obviously less than 20.\n David\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": "17b78d38e438bb25d27aa00554ad948a792850aa",
      "tree": "7c0691d8d0164f57266690a9982ba750c346927f",
      "parents": [
        "619efcb3d51edf5d144293d08cbc3777655310e4"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Feb 13 22:04:01 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Thu Feb 13 22:04:01 2003 +0000"
      },
      "message": "Fix debug statement in ospf_packet.c and merge error in ospf_lsa.c\n"
    },
    {
      "commit": "37163d6d0cc49d34a0ea6c0de3184cda93efb419",
      "tree": "96bbe047e20abc715894d42652430757daa62758",
      "parents": [
        "7d7ddde299bddebb48d1e98a9be04008eaa5baad"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 18:40:56 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Mon Feb 03 18:40:56 2003 +0000"
      },
      "message": "Merge to zebra.org CVS 20030203 16:30GMT\n"
    },
    {
      "commit": "09e4efdcb22ac13af3f6e3a38158871ed140e5e0",
      "tree": "5fa509af429208262d719c04a195f5cd58e49ffa",
      "parents": [
        "2d59836a4fb16e2471560a47da7e5f75779c5807"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:12:02 2003 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Sat Jan 18 00:12:02 2003 +0000"
      },
      "message": "Date: Fri, 20 Dec 2002 17:28:45 +0900\nFrom: Masahiko Endo \u003cendo@suri.co.jp\u003e\nReply-To: zebra@zebra.org\nTo: zebra@zebra.org\nCc: kunihiro@zebra.org, yokota@kddlabs.co.jp\nSubject: [zebra 16823] [PATCH] Bugfix and new feature in Opaque-LSA\nhandling.\n\n----- * ----- * ----- * ----- * ----- * ----- * ----- * ----- * ----- * -----\nChanges 2002.12.20\n\n1. Bug fixes\n\n  1.1 When an opaque LSA is being removed from (or added to) the LSDB,\n      it does not mean a change in network topology. Therefore, SPF\n      recalculation should not be triggered in that case.\n      There was an assertion failure problem \"assert (rn \u0026\u0026 rn-\u003einfo)\"\n      inside the function \"ospf_ase_incremental_update()\", because\n      the upper function \"ospf_lsa_maxage_walker_remover()\" called it\n      when a type-11 opaque LSA is removed due to MaxAge.\n\n  1.2 Type-9 LSA is defined to have \"link-local\" flooding scope.\n      In the Database exchange procedure with a new neighbor, a type-9\n      LSA was added in the database summary of a DD message, even if\n      the link is different from the one that have bound to.\n\n2. Feature enhancements\n\n  2.1 Though a \"wildcard\" concept to handle type-9/10/11 LSAs altogether\n      has introduced about a year ago, it was only a symbol definition\n      and actual handling mechanism was not implemented. Now it works.\n"
    },
    {
      "commit": "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": "2e3b2e474ed5ba04744b167132a84f9954485af4",
      "tree": "cc07fb34a1bf21ead5cc3ad69e4a9dfde2b43b0e",
      "parents": [
        "7afa08da2d3690baee1739da400775f8543f5863"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 21:03:13 2002 +0000"
      },
      "message": "zebra link state detection support\n"
    },
    {
      "commit": "7afa08da2d3690baee1739da400775f8543f5863",
      "tree": "e050940bb5e77b4cbaed844b689bbd543e2372c7",
      "parents": [
        "30961a15cf3837b62c65d4c0ecf3ee05f4b6bf55"
      ],
      "author": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:59:45 2002 +0000"
      },
      "committer": {
        "name": "paul",
        "email": "paul",
        "time": "Fri Dec 13 20:59:45 2002 +0000"
      },
      "message": "ospfd Point-to-Multipoint support\n"
    },
    {
      "commit": "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"
    }
  ]
}
