| Age | Commit message (Collapse) | Author | 
|---|
|  |  | 
|  | * ospfd/ospf_vty.c: (ospf_config_write) fix output of
	passive-interface when IP has been specified - we still need to
	print the interface. | 
|  | * lib/if.c: (if_cmp_func) new function, compare interface names in
	alphabetical order.
	(if_create) Take name as argument and add interface in sorted order.
	(if_get_by_name),(interface_cmd) fixup calls to if_create - see
	above.
	(if_init) register list comparison function.
	* lib/if.h: Add comparison function, modify if_create prototype.
	* lib/zclient.c: Modify call to if_create.
	* ospfd/ospf_interface.c: (ospf_vl_new) modify call to if_create.
	change sprintf to snprintf.
	* zebra/kernel_socket.c: (ifm_read) modify call to if_create. | 
|  | * ospf_packet.c (ospf_ls_upd_send_queue_event): get next route
          node in body of the loop to avoid chance that route node
          is unlocked and deleted before the next iteration tries to
          get next route node. | 
|  | * lib/version.h: add ZEBRA_URL (unused for now)
        * lib/vty.c: CMD_ERR_NOTHING_TODO when reading conf file should not
          be fatal. slight reformating.
        * ospfd/ospf_zebra.c: ignore reject/blackhole routes if zebra sends
          these type of routes. probably should be a new type of route to
          allow daemons to more easily choose whether to redistribute them
          - rathen than just a flag (eg for reject/blackhole).
          reorder the is_prefix_default test for ZEBRA_IPV4_ROUTE_DELETE to
          avoid the inverted test - slightly more readable.
        * redhat/zebra.spec.in: Add ospfapi port to services file, if
          with_ospfapi.
        * zebra/rib.h: Change nexthop types to an enum.
        * zebra/rt_netlink.c: run it through indent -nut.
          Add nexthop_types_desc[] descriptive array for nexthop types.
          (netlink_route_multipath) debug statements indicate which branch
          they are in and print out nexthop type.
        * zebra/zebra_rib.c: slight reformatting.
        * zebra/zebra_vty.c: Pass ZEBRA_FLAG_BLACKHOLE flag to
          static_add_ipv4() if Null0 route is configured. print out Null0 if
          STATIC_IPV4_BLACKHOLE route, and ignore flags (shouldnt be
          possible to set flags from vty) for config and show route. | 
|  | * ospf_lsa.c: fix up some places where an NSSA specific define,
	  (OSPF_LSA_LOCAL_XLT) was referenced in if statements without being
	  ifdef'ed by HAVE_NSSA. | 
|  | * (global): Add/fixup NSSA ABR translation functionality
	* ospfd.h: Adjust the NSSA ROLE defines. Rename STATE to TRANSLATE.
	  Rename the LSA_NSSA_GET define to LSA_OPTIONS_NSSA_GET.
	* ospfd.c: Adjust to match changes to ospfd.h
	* ospf_te.c: Adjust to match change to LSA_NSSA_GET.
	* ospf_lsa.h: slights reformatting.
	  Add new NSSA functions, ospf_translated_nssa_compare() (not
	  currently used), ospf_translated_nssa_refresh() and
	  ospf_translated_nssa_originate().
	* ospf_lsa.c: Implemented aforementioned new functions. Fix up
	  several NSSA hooks to /not/ be called for Type-5s which are
	  translated. Add additional hooks. Set the ROUTER_LSA_NT bit in
	  router-lsa flags if ABR does translation. New function,
	  ospf_lsa_translated_nssa_new() implemented. Dont register
	  translated LSAs for refreshing - instead we implicitly rely on
	  the ASBR refreshing the Type-7, and refresh the translated Type-5
	  at the same time. Some minor reformatting. Extra debug info added.
	  Also, existing debug statements modified to report LSA Id.
	* ospf_flood.c: call ospf_translated_nssa_refresh() when refreshing
	  Type-7. minor reformatting.
	* ospf_dump.c: Dump NSSA LSAs.
	* ospf_asbr.h: slight reformatting. Export
	  ospf_external_route_lookup() (though, not used. probably will
          undo this).
        * ospf_abr.c: Slight reformatting in many places. Update to match
          ospfd.h changes.
          (ospf_abr_translate_nssa): make it work, using the new ospf_lsa
	  translation functions.
	  (Several places): change struct prefix * to struct prefix_ipv4 *.
	  (might as well do the casts at higher levels). Add more debug
	  info.
	  (ospf_abr_announce_stub_defaults): announce default to NSSA areas
	  too.
	  (ospf_abr_announce_nssa_defaults): do nothing. this function
          probably should die. (see ospf_abr_announce_stub_defaults).
	  (ospf_abr_task_timer): run NSSA tasks. | 
|  | * ospf_apiserver.c: Add missing close bracket | 
|  | * ospfd/ospf_apiserver.c: check for NULL from ospf_lookup() | 
|  |  | 
|  | * (show_ip_ospf_database_header) Fix unconditional NSSA-dependent
          printf. | 
|  | * ospf_packet.c: (ospf_ls_upd_send_queue_event) undo fix suggested
          Mikael Lonnroth. As per Kamatchi Soundaram /
          [zebra 19590], original behaviour is correct. | 
|  | * ospf_vty.c: (global) add, unused, description array for lsa flags.
	  (show_ip_ospf_database_header): pretty print options, printf hex
          numbers as 0x, print lsa flags and note if it is a translated LSA.
          (show_lsa_detail_proc): print out OSPF_LSA_LOCAL_XLT LSAs.
	* ospf_packet.c: (ospf_write) print out destination IP in debug info
          if write fails. | 
|  | * ospf_packet.c: (ospf_ls_upd_send_queue_event) clean up list node
	  and unlock lsa if we break early. (eg packet size too large). | 
|  | * ospf_vty.c (ospf_area_stub_no_summary): fix typo.
	  (ospf_area_nssa_cmd_handler): new function to handle the
	  area.*nssa commands.
	  (ospf_area_nssa_cmd): changed to call ospf_area_nssa_cmd_handler
	  (ospf_area_nssa_translate_cmd) ditto
	  (ospf_area_nssa_translate_cmd): changed from ALIAS to defun, call
	  ospf_area_nssa_cmd_handler
	  (ospf_area_nssa_translate_no_summary_cmd): ditto
	  (no_ospf_area_nssa_cmd): call ospf_schedule_abr_task()
	  (show_ip_ospf_area): Formatting cleanups. Properly print out NSSA
          area configuration.
	  show_router_lsa_detail: Add missing newline
	  (show_network_lsa_detail): ditto
	  (show_summary_lsa_detail): ditto
	  (show_summary_asbr_lsa_detail): ditto
	  (show_ip_ospf_route_router): fix spacing
	  (config_write_ospf_area): actually write out proper state for NSSA
	  area. | 
|  | * ospf_abr.c (ospf_abr_nssa_am_elected): new function.
	  Look through LSDB for an area and try determine whether other
	  routers are more 'electable' than this router. Presumes caller
	  has checked Role.
	  (ospf_abr_nssa_check_status): new function. check any NSSA related
          status changes. At present determines NSSATranslatorState should
	  be enabled or disabled.
	  (ospf_abr_announce_network_to_area): remove the redundant
	  call to ospf_abr_announce_network_to_area() (as per Vadim,
	  [zebra 14710], problem 7).
	  (global): Update NSSATranslator to NSSATranslatorState as per
	  ospfd.h changes
	  (ospf_abr_announce_nssa_defaults): call
	  ospf_abr_announce_network_to_area() to inject default summaries.
	  (ospf_abr_nssa_task): undo commented out calls to
	  ospf_abr_prepare_aggregates() and ospf_abr_send_nssa_aggregates(),
	  if they're borked, lets fix them.
	  (ospf_abr_task): remove call to ospf_abr_nssa_task() - move this
	  to the timer scheduler.
	  (ospf_abr_task_timer): call ospf_abr_nssa_task() and
	  ospf_abr_nssa_check_status()
	  (misc): some minor reformatting. | 
|  | * ospfd.c (ospf_area_nssa_set): Set defaults for NSSA Role, State
	  and Stability Interval and no_summary.
	  (ospf_area_nssa_translator_role_(un?)set): Update to
	  NSSATranslatorRole | 
|  | * ospfd.h (struct ospf_area): remove NSSATranslator. Add
	  NSSATranslatorState and NSSATranslatorStabilityInterval (currently
	  not used).
	  (global): add OSPF_NSSA_TRANS_STABLE_DEFAULT, default for
	  NSSATranslatorStabilityInterval. Update the LSA_NSSA_GET to
	  reflect struct ospf_area changes. | 
|  | * ospf_route.c: delete routes generated from AS-External routes if
	  there is a inter/intra route. Adds ospf_route_delete_same_ext()
	  which prunes external routes, which is called from
	  ospf_route_install() when new route table is installed. | 
|  | * ospf_lsa.h: elaborate on comment for ROUTER_LSA_NT
	  add IS_ROUTER_LSA_NT macro. | 
|  | * ospf_lsa.c (router_lsa_flags): Set the correct flags for
	  router-lsa's. Eg OSPF_FLAG_ASBR is /not/ an LSA flag, its an
	  internal ospfd flag (just happens to have same value as
	  ROUTER_LSA_EXTERNAL). Set ROUTER_LSA_EXTERNAL for ASBRs,
	  ROUTER_LSA_BORDER for ABRs and ROUTER_LSA_NT for NSSA ABRs which
	  are OSPF_NSSA_ROLE_ALWAYS translators. | 
|  | * ospf_interface.c (ospf_vl_set_params): new router LSA is not
	generated when the cost of the routing entry for the virtual
	link endpoint has changed. If the cost to reach the virtual link's
	endpoint has changed, add router LSA timer for the backbone area. | 
|  | * ospf_dump.h: fix NSSA debug define | 
|  | * ospfd/ospf_zebra.c: Run it through indent -nut to fix the $%^@ing
	annoying mix of tabs and spaces. | 
|  | * ospfd/ospf_zebra.c: [zebra 19434] fix for disappearing OSPF routes
	modify ospf_zebra_delete() to specify nexthop when deleting routes
	with zebra. | 
|  | * Fix lib/smux.c's reliance on daemons exporting struct
          thread_master *master. | 
|  | * ospfd/ospf_packet.c: Fix typos, extra squiggly bracket. Note to
	  self: in future make sure that when you test compile a change you
          actually have the relevant configure options enabled. | 
|  | * ospfd/ospf_packet.c: Update Hasso's hack slightly, add comment
	  elaborating on Hasso's, use the SET/CHECK_FLAG macros. | 
|  | * lib/vty.{c,h}: Remove vty layer depending on a 'master' global,
	  pass the thread master in explicitly to vty_init. Sort out some
	  header dependency problems with lib/command.h
	* zebra/: Move globals to struct zebrad. Update vty_init().
	* (.*)/\1_main.c: update call to vty_init(). | 
|  | * (ospf_spf.c): Fix indentation - primarily the mix of tabs and spaces.
	Ran through indent -nut (GNU style, but only spaces for indentation) | 
|  | * Revert Cougar's sort interface names patch, causes problems with
	enabling of interfaces for OSPF in ospfd. | 
|  | * (ospf_spf.c): Fix consideration of costs for PtP nexthops in
	  ospf_nexthop_calculation(). | 
|  |  | 
|  | * Merge of zebra privileges | 
|  | Subject: [zebra 19263] Another memory leak!! is zebra OSPF
   This memory leak gets into picture whenever any interface goes down.
 Problem found and desctription: Whenever the interface goes down, the
 "def_params" (member of ospf_if_info) structure memory is not freed.
 Fix made: added the following line to free the "def_params" memory of
 ospf_if_info before calling the  "XFREE(MTYPE_OSPF_IF_INFO, ifp->info);"
 The added line is:
       ospf_del_if_params ((struct ospf_if_params *) IF_DEF_PARAMS (ifp)); | 
|  | Subject: [zebra 19262] Re: Memory leak in OSPF
Fix applied for Kamatchi's original report was to remove the auth_crypt
initialisation from the wrong function. This should fix that. | 
|  | Subject: [zebra 19259] Memory leak in OSPF
The detail of the memory leak follows:
 File name: ospf_interface.c
 Function name: ospf_if_new_hook().
 Type of leak: Overwriting the already allocated memory.
 Problem found and description:
 The ospf_new_if_params() fn allocates a memory for "auth_crypt" which
 is overwritten, down in the fn (ospf_if_new_hook) by explicitely allocating
 a memory for the same "auth_crypt".
 Fix: remove allocation from ospf_new_if_params() | 
|  | harm, but of course ... it is hack. | 
|  | the class of machines which zebra runs on than the original defaults which
were taken from IOS (and even IOS uses much lower times these days). Lower
values greatly help with convergence.
Ideally, we'd use even lower times, but thread_add_timer() api will need to
be modified to use milliseconds. (eg JunOS uses 100ms for delay, and 700ms
for hold time, iirc from Hasso). | 
|  |  | 
|  |  | 
|  | * ospf_interface.c(ospf_if_lookup_recv_if): Use the most specific
          match for interface lookup. | 
|  | Add the 'no interface' command to all the daemons and vtysh. now it's
possible to delete interface from routeing daemons as well only if it
doesn't exist in os.
http://hasso.linux.ee/zebra/ht-no_interface_fix.patch | 
|  |  | 
|  | http://hasso.linux.ee/zebra/ht-no_interface-23052003.patch
Add the 'no interface' command to all the daemons and vtysh. | 
|  | Subject: [zebra 19093] [PATCH] Two more fixes
Show NSSA LSA route info in "show ip ospf database" output | 
|  |  | 
|  |  | 
|  | Subject: [zebra 19091] [PATCH] NSSA fixes try2
NSSA didn't work without problems even after my previous fixes. Seems
that I tracked down problems finally. | 
|  |  |