summaryrefslogtreecommitdiff
path: root/ospfd
AgeCommit message (Collapse)Author
2003-10-152003-10-15 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_interface: (ospf_if_lookup_table) fix compile errors from previous patch. doh.
2003-10-152003-10-15 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_interface: (ospf_if_lookup_table) new function to lookup oi for a given prefix in a given interfaces table of oi's. (ospf_if_new) use ospf_if_lookup_table to deal with zebra reporting new interface multiple times. NB: This patch is a complete plaster-band of a hack. First, why is zebra reporting interface events multiple times? Second, why does ospfd maintain so many damn lists and tables relating to oi's - these should be reconciled into one or two tables.
2003-10-132003-10-13 sowmini.varadhan@sun.compaul
* ospf_lsa.h: Add OSPF_LSA_PREMATURE_AGE flag. * ospf_lsa.c: added better debug comments. check sequence number in ospf_lsa_install. ospf_maxage_lsa_remover() checks for OSPF_LSA_PREMATURE_AGE and re-originates the lsa after ls_acks are received. * ospf_flood.c: improve debug statement- print ls_seqnum.
2003-09-292003-09-29 Paul Jakma <paul@dishone.st>paul
* zebra/connected.c: revert the 'generic PtP' patch as it causes far too many problems. People who use FreeSWAN should investigate native linux ipsec. * zebra/rt_netlink.c: ditto * lib/if.c: ditto * ripd/ripd.h: ditto * ripd/ripd.c: ditto * ripd/rip_interface.c: ditto * ospfd/ospfd.c: ditto * ospfd/ospf_snmp.c: ditto * bgpd/bgp_nexthop.c: ditto
2003-09-292003-09-29 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_packet.c: Add debug output for some of the previously completely silent drops of 'bad' packets.
2003-09-232003-09-24 Thomas Giger TGC <thomas.giger@tgc.de>paul
* ospf_packet.c (ospf_associate_packet_vl): pass NULL struct interface to ospf_if_lookup_by_local_addr() rather than the receiving interface ifp, packets for VL's could come in any interface. See quagga-dev 250.
2003-08-272003-08-27 Jay Fenlason <fenlason@redhat.com>paul
* bgpd/bgp_routemap.c: attr->med is type u_in32_t, should be compared with UINT32_MAX * ospfd/ospfd.c: remove redundant assert * zebra/rtadv.c: add missing include for zebra/rib.h
2003-08-152003-08-15 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_route.c: Fixup extraneous list_delete which was causing SEGVs of ospfd.
2003-08-142003-08-14 Paul Jakma <paul@dishone.st>paul
* zebra/main.c: Fixup ZEBRA_{GROUP,USER} defines -> QUAGGA_{USER,GROUP} * bgpd/bgp_main.c: ditto * ospf6d/ospf6_main.c: ditto * ospfd/ospf_main.c: ditto * ripd/rip_main.c: ditto * ripngd/ripng_main.c: ditto * zebra/main.c: ditto
2003-08-122003-08-12 Paul Jakma <paul@dishone.st>paul
2003-08-12 Paul Jakma <paul@dishone.st> * Makefile.am: redhat/zebra.* -> redhat/quagga.* * configure.ac: Bump autoconf prerequisite to 2.53. dist name zebra -> quagga. general Zebra -> Quagga where appropriate (ie not zebra daemon). User and group zebra->quagga. s/ZEBRA\(_VERSION\)/QUAGGA\1/. * bgpd/bgp_main.c: s/ZEBRA\(_VERSION\)/QUAGGA\1/ * lib/command.c: Update banners and s/ZEBRA\(_VERSION\)/QUAGGA\1/ * lib/print_version.c: ditto * lib/version.h: s/ZEBRA\(_VERSION\)/QUAGGA\1/ and bump version. Change ZEBRA_URL. * lib/smux.c: s/ZEBRA\(_VERSION\)/QUAGGA\1/ * lib/vty.h: Change Zebra.conf to Quagga.conf (integrated file) * ospf6d/ospf6{,_main}.c: s/ZEBRA\(_VERSION\)/QUAGGA\1/ * ospfd/ospf_main.c: s/ZEBRA\(_VERSION\)/QUAGGA\1/
2003-08-122003-08-11 Yasuyuki Haga <yasuhaga@nifty.ne.jp>paul
* ospfd/ospf_zebra.c: (ospf_zebra_delete) Set ifindex if no nexthop supplied. log if no (ifindex || nexthop) supplied.
2003-08-102003-08-10 Yasuyuki Haga <yasuhaga@nifty.ne.jp>paul
* ospfd/ospf_zebra.c: (ospf_zebra_delete) Do not dereference the ifp, it mightn't exist.
2003-08-102003-08-10 amir <amir@datacore.ch>paul
* Add missing 'i' to getopts, short form of --pid_file. see http://bugzilla.quagga.net/show_bug.cgi?id=25
2003-08-07Temporary "fix" for segfault. See bug #29 in bugzilla for details.hasso
2003-08-062003-08-06 Anders K. Pedersen <mailnews+router-quagga-dev@news.cohaesio.com>paul
* ospfd/ospf_vty.c: (ospf_config_write) fix output of passive-interface when IP has been specified - we still need to print the interface.
2003-08-012003-08-01 Cougar <cougar@random.ee>paul
* 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.
2003-07-242003-07-25 kamatchi soundaram <kamatchi@tdd.sj.nec.com>paul
* 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.
2003-07-152003-07-15 Paul Jakma <paul@dishone.st>paul
* 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.
2003-07-132003-07-13 Paul Jakma <paul@dishone.st>paul
* 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.
2003-07-122003-07-12 Paul Jakma <paul@dishone.st>paul
* (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.
2003-07-092003-07-09 Paul Jakma <paul@dishone.st>paul
* ospf_apiserver.c: Add missing close bracket
2003-07-092003-07-09 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_apiserver.c: check for NULL from ospf_lookup()
2003-07-03Don't install Type-7 LSA's into nonNSSA area.hasso
2003-06-302003-06-30 Paul Jakma <paul@dishone.st>paul
* (show_ip_ospf_database_header) Fix unconditional NSSA-dependent printf.
2003-06-302003-06-30 Paul Jakma <paul@dishone.st>paul
* ospf_packet.c: (ospf_ls_upd_send_queue_event) undo fix suggested Mikael Lonnroth. As per Kamatchi Soundaram / [zebra 19590], original behaviour is correct.
2003-06-272003-06-27 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-262003-06-26: Mikael Lonnroth <gml@advancevpn.com>paul
* 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).
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* 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
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-222003-06-19 "Suraev, Vadim" <vadim.suraev@terayon.com>paul
* 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.
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* ospf_lsa.h: elaborate on comment for ROUTER_LSA_NT add IS_ROUTER_LSA_NT macro.
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-222003-06-19 "Suraev, Vadim" <vadim.suraev@terayon.com>paul
* 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.
2003-06-222003-06-19 Paul Jakma <paul@dishone.st>paul
* ospf_dump.h: fix NSSA debug define
2003-06-192003-06-19 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_zebra.c: Run it through indent -nut to fix the $%^@ing annoying mix of tabs and spaces.
2003-06-192003-06-19 Vladimir Ivaschenko <hazard@francoudi.com>paul
* ospfd/ospf_zebra.c: [zebra 19434] fix for disappearing OSPF routes modify ospf_zebra_delete() to specify nexthop when deleting routes with zebra.
2003-06-192003-06-19 Paul Jakma <paul@dishone.st>paul
* Fix lib/smux.c's reliance on daemons exporting struct thread_master *master.
2003-06-192003-06-19 Paul Jakma <paul@dishone.st>paul
* 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.
2003-06-192003-06-19 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_packet.c: Update Hasso's hack slightly, add comment elaborating on Hasso's, use the SET/CHECK_FLAG macros.
2003-06-152003-06-15 Paul Jakma <paul@dishone.st>paul
* 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().
2003-06-062003-06-07 Paul Jakma <paul@dishone.st>paul
* (ospf_spf.c): Fix indentation - primarily the mix of tabs and spaces. Ran through indent -nut (GNU style, but only spaces for indentation)
2003-06-062003-06-07 Paul Jakma <paul@dishone.st>paul
* Revert Cougar's sort interface names patch, causes problems with enabling of interfaces for OSPF in ospfd.
2003-06-062003-06-7 kamatchi soundaram <kamatchi@tdd.sj.nec.com>paul
* (ospf_spf.c): Fix consideration of costs for PtP nexthops in ospf_nexthop_calculation().
2003-06-05Patch from Cougar - sort iflist by name.hasso
2003-06-042003-06-04 Paul Jakma <paul@dishone.st>paul
* Merge of zebra privileges
2003-06-04From: kamatchi soundaram <kamatchi@tdd.sj.nec.com>paul
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));
2003-06-04From: kamatchi soundaram <kamatchi@tdd.sj.nec.com>paul
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.
2003-06-03From: kamatchi soundaram <kamatchi@tdd.sj.nec.com>paul
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()