summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2007-10-04+ rib_process() speedup for multi-nexthop route nodesDenis Ovsienko
2007-10-03+ Minor bugfix: IPv6 prefixes were logged incorrectly in RIB debugging ↵Denis Ovsienko
calls. Fixed.
2007-09-18[privs/Solaris] Quagga should work in zones with IP instancesPaul Jakma
2007-09-18 Paul Jakma <paul.jakma@sun.com> * privs.c: definition of ZCAP_NET_ADMIN on Solaris should be PRIV_SYS_IP_CONFIG, when that's available. Thus allowing Quagga to work with in Solaris zones with exclusive IP instances.
2007-09-18[bgpd] Fix typo, which prevented advertisement of MP (non-IPv4) prefixesPaul Jakma
2007-09-17 Paul Jakma <paul.jakma@sun.com> * bgp_open.c: (bgp_capability_mp) We were setting afc_nego[safi][safi] rather than afc_nego[afi][safi], thus failling to announce any non-IPv4 prefixes. Remove the extra, typo-ed character. * bgp_capability_test.c: Test that peer's adv_recv and adv_nego get set correctly for MP capability and given AFI/SAFI. Colour OK/failed result so it's easier to find them.
2007-09-18+ fix missing arg to zlog_warn()Denis Ovsienko
2007-09-18+ fix minor regression in OSPF sending buffer adjustment logicDenis Ovsienko
2007-09-14+ sayonara old_pid!Denis Ovsienko
2007-09-14+ fixed bug #402: now the second zebra process doesn't destroy routesDenis Ovsienko
of the first one before dying + we are not going to receive routing messages originated by old_pid, because rib_sweep_route() is called after damon() now. This will allow to drop old_pid completely soon.
2007-09-14Switch from LOOKUP() to lookup() for rtm_type (see bug #401 for details).Denis Ovsienko
2007-09-12* rt_socket.c: (kernel_rtm_ipv4) prefix_buf could be passedDenis Ovsienko
to zlog_err() uninitialized with debug disabled. Fixed.
2007-09-07[release] bump to 0.99.9Paul Jakma
2007-09-07 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump version to 0.99.9
2007-09-07[bgpd] low-impact DoS: crash on malformed community with debug setPaul Jakma
2007-09-07 Paul Jakma <paul.jakma@sun.com> * (general) bgpd can be made crash by remote peers if debug bgp updates is set, due to NULL pointer dereference. Reported by "Mu Security Research Team", <security@musecurity.com>. * bgp_attr.c: (bgp_attr_community) If community length is 0, don't set the community-present attribute bit, just return early. * bgp_debug.c: (community_str,community_com2str) Check com pointer before dereferencing.
2007-09-06+ fixed bug #400: adjusted rtread_sysctl.c:route_read()Denis Ovsienko
2007-08-30[bgpd] bug #398 Bogus free on out route-map, and assert() with rsclientsPaul Jakma
2007-08-27 Paul Jakma <paul.jakma@sun.com> * bgp_route.c: (bgp_announce_check) Fix bug #398, slight modification of Vladimir Ivanov's suggested fix - to keep memory alloc conditional. (bgp_process_announce_selected) Don't take struct attr as argument, none of the callers need it and it needlessly distances allocation from use. Free the extended attr, the attr itself is on the stack. Fix bad indentation. * bgp_attr.c: (bgp_packet_attribute) Remove incorrect assert, and adjust conditional to test attr->extra, diagnosis by Vladimir Ivanov in bug #398. 2007-08-27 Vladimir Ivanov <wawa@yandex-team.ru> * bgp_route.c: (bgp_announce_check_rsclient) copy of ri->attr is no longer deep enough, due to addition of attr->extra. It should use bgp_attr_dup, as bgp_announce_check() does.
2007-08-23[bgpd] Pass NOSUB to regexecPaul Jakma
2007-08-23 Paul Jakma <paul.jakma@sun.com> * bgp_regex.c: (bgp_regcomp) Pass NOSUB flag to regcomp to prevent parsing of substitutions, which can have profound performance effects on bgpd and are of no use to the CLI anyway. How much it helps depends on the regex implementation.
2007-08-21Bug #362 is fixed now.Denis Ovsienko
2007-08-21Looks like bug #320 is finally fixed now.Denis Ovsienko
2007-08-21Fixed ioctl_solaris.c:if_get_mtu() for IPv6'less operationDenis Ovsienko
2007-08-17Fixed bug #394 "RTF_DONE is ignored in rtm_read()"Denis Ovsienko
2007-08-14Merged own patch for bug #390 (rewrite ↵Denis Ovsienko
zebra/zebra_rib.c:nexthop_active_update())
2007-08-13Merged own patch for the bug #391 (debugging and comments mostly).Denis Ovsienko
2007-08-10Use the proper field length for the peer's address (netlink_interface_addr)vize
2007-08-08[tests] Add bgp_capability_test.c, should have been part of earlier commitPaul Jakma
2007-08-08[isisd] Commit new files which should have been part of previous commit..Paul Jakma
2007-08-07[isisd] Add support for Solaris DLPIPaul Jakma
2007-08-07 James Carlson <james.d.carlson@sun.com> * configure.ac: Added support for separate link-layer access mechanisms in isisd. * isis_network.c: split up into isis_bpf.c, isis_dlpi.c, and isis_pfpacket.c, selected by autoconf, and added DLPI support. * (general) Fixed to allow compilation and use on Solaris.
2007-08-07[ospfd] Finish explanatory comment started in previous commit..Paul Jakma
2007-08-07 Paul Jakma <paul.jakma@sun.com> * ospf_spf.c: (ospf_spf_next) Finish off the explanatory comment made in previous commit
2007-08-06[zebra] Add extra debug logging for RIB and RIB queueingPaul Jakma
2007-08-06 Denis Ovsienko * zebra_rib.c: (general) Add extra debug logging for RIB and RIB queue.
2007-08-06[ospfd] Fix bad SPF calculation on some topologies - incorrect sortingPaul Jakma
2007-08-07 Atis Elsts <atis@mikrotik.com> * ospf_spf.c: (ospf_spf_next) Sort heap in correct direction after vertex cost is changed, thus fixing incorrect SPF calculation on certain topologies. * lib/pqueue.{c,h}: Export trickle_up
2007-08-06Fix last commit - add back in closing paren which was apparentlyGreg Troxel
uninentionally deleted along with a test.
2007-08-06[ospfd] Bug #331, NSSA ASBR regression - failure to set E-bit in NSSA areasPaul Jakma
2007-08-06 Paul Jakma <paul.jakma@sun.com> * ospf_lsa.c: (router_lsa_flags) Bug #331, NSSA regression caused caused ASBRs to not advertise E-bit into NSSA areas.
2007-08-06[bgpd] Add support for AS_PATHLIMIT / draft-ietf-idr-as-pathlimitPaul Jakma
2007-07-31 Paul Jakma <paul.jakma@sun.com> * (general) Support for draft-ietf-idr-as-pathlimit-03. * bgp_attr.h: (struct attr) Add pathlimit struct bgp_attr.c: (attr_str) Add BGP_ATTR_AS_PATHLIMIT string. (attrhash_key_make) tally pathlimit too (attrhash_cmp) cmp pathlimit attr (bgp_attr_aspathlimit) New, parse AS_PATHLIMIT attr. (bgp_attr_parse) ditto (bgp_packet_attribute) Write out AS_PATHLIMIT when set (bgp_dump_routes_attr) ditto * bgp_route.h: (struct bgp_static) Add TTL field * bgp_route.c: (bgp_announce_check) Drop paths that are over their hop-count TTL before sending via EBGP. Mangle ASN in pathlimit for confeds/private as best we can. (bgp_static_update_{rsclient,main}) Add any configure pathlimit information. (bgp_pathlimit_update_parents) New, update atomic-aggr setting for parents of an aspathlimit'ed static. (bgp_static_set) Add TTL argument, for all the 'bgp network' commands. Call previous for TTL changed statics. (bgp_static_unset) Call pathlimit_update_parents. (various bgp network commands) Add 'pathlimit <0-255>' qualifier to all the various forms, bar route-map - which can set ttl itself. * bgp_routemap.c: (general) Add support for 'set pathlimit ttl' and 'match pathlimit as'. * doc/bgpd.texi: Document 'network ... pathlimit <ttl>'
2007-08-06[bgpd] cleanup, compact and consolidate capability parsing codePaul Jakma
2007-07-26 Paul Jakma <paul.jakma@sun.com> * (general) Clean up and compact capability parsing slightly. Consolidate validation of length and logging of generic TLV, and memcpy of capability data, thus removing such from cap specifc code (not always present or correct). * bgp_open.h: Add structures for the generic capability TLV header and for the data formats of the various specific capabilities we support. Hence remove the badly named, or else misdefined, struct capability. * bgp_open.c: (bgp_capability_vty_out) Use struct capability_mp_data. Do the length checks *before* memcpy()'ing based on that length (stored capability - should have been validated anyway on input, but..). (bgp_afi_safi_valid_indices) new function to validate (afi,safi) which is about to be used as index into arrays, consolidates several instances of same, at least one of which appeared to be incomplete.. (bgp_capability_mp) Much condensed. (bgp_capability_orf_entry) New, process one ORF entry (bgp_capability_orf) Condensed. Fixed to process all ORF entries. (bgp_capability_restart) Condensed, and fixed to use a cap-specific type, rather than abusing capability_mp. (struct message capcode_str) added to aid generic logging. (size_t cap_minsizes[]) added to aid generic validation of capability length field. (bgp_capability_parse) Generic logging and validation of TLV consolidated here. Code compacted as much as possible. * bgp_packet.c: (bgp_open_receive) Capability parsers now use streams, so no more need here to manually fudge the input stream getp. (bgp_capability_msg_parse) use struct capability_mp_data. Validate lengths /before/ memcpy. Use bgp_afi_safi_valid_indices. (bgp_capability_receive) Exported for use by test harness. * bgp_vty.c: (bgp_show_summary) fix conversion warning (bgp_show_peer) ditto * bgp_debug.h: Fix storage 'extern' after type 'const'. * lib/log.c: (mes_lookup) warning about code not being in same-number array slot should be debug, not warning. E.g. BGP has several discontigious number spaces, allocating from different parts of a space is not uncommon (e.g. IANA assigned versus vendor-assigned code points in some number space).
2007-08-02Add comment questioning part of previous change (Denis?).Greg Troxel
Fix indentation to match accumulated changes.
2007-08-02Bugzilla #384.Greg Troxel
2007-08-02 Denis Ovsienko * rt_socket.c (kernel_rtm_ipv4): Only call rtm_write when changes are intended. Don't set FIB flag on failed additions (such as occur with multiple paths. http://bugzilla.quagga.net/attachment.cgi?id=235&action=view
2007-08-02disable gmake workaround now that solaris directory is not built byGreg Troxel
default
2007-08-02note the use of GNU make extensions.Greg Troxel
2007-08-02Add --enable-solaris to descend into solaris-specific build directory.Greg Troxel
While it doesn't take a long time to build, this is currently the only thing in the tree that doesn't work with BSD make, and there's no reason to build solaris package control files on other systems.
2007-08-02workaround buggy solaris/Makefile.am which requires GNU make.Greg Troxel
2007-07-31[bgpd] Dont schedule dumps multiple times for same commandPaul Jakma
2007-07-31 Lorenzo Colitti <lorenzo@colitti.com> * bgp_dump.c: (general) Add comments to code. (bgp_dump_interval_add) remove some redundant lines. (bgp_dump_set) Use enum for type argument. Avoid scheduling dump twice if exact same command is given twice..
2007-07-272007-07-27 Paul Jakma <paul.jakma@sun.com>Paul Jakma
* configure.ac: Bump version to 0.99.8
2007-07-06[lib] Add comments regarding setsockopt_multicast_ipv4 arguments.Andrew J. Schorr
2007-07-06 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * sockopt.{c,h}: (setsockopt_multicast_ipv4) Add some comments about the arguments.
2007-06-27[zebra] rib loop check for RIB_ENTRY_REMOVED checks wrong varPaul Jakma
2007-06-25 Denis Ovsienko * zebra_rib.c: (rib_add_ipv4_multipath) Loop through RIB is using 'same' variable, but RIB_ENTRY_REMOVED check is testing the constant 'rib' variable, fix. Impact unknown at this point.
2007-06-252007-06-25 Hasso Tepper <hasso@quagga.net>Hasso Tepper
* configure.ac: Fix typo so it compiles again on BSD systems.
2007-06-22[bgpd] bug #368: Fix possible loop between peers going Idle<->OpenSentPaul Jakma
2007-06-22 Paul Jakma <paul.jakma@sun.com> * bgp_fsm.c: (struct FSM) Bug #368. TCP Errors during OpenSent should cycle to Active, not to Idle or else peer bringup can race and cycle Idle<->Active. Reported and fix tested by Mukesh Agrawal.
2007-06-22[build] configure needs to check for struct icmphdr for IRDPPaul Jakma
2007-06-22 Paul Jakma <paul.jakma@sun.com> * configure.ac: IRDP also depends on struct icmphdr, enabling only on in_pktinfo breaks when an OS acquires pktinfo, as Solaris NV has. Reported by Jim Carlson.
2007-06-20[vtysh] bug #371: vtysh forgets to print 'end' for write-terminalPaul Jakma
2007-06-20 Nicolas Deffayet <nicolas@deffayet.com> * vtysh.c: (vtysh_write_terminal) Write 'end' when done, to be consistent with telnet vty, and expected by tools like rancid.
2007-06-14[bgpd] bug #370, default-originate was broken by a silly thinkoPaul Jakma
2007-05-25 Paul Jakma <paul.jakma@sun.com> * bgp_route.c: (bgp_default_originate) Sanity check added previously was broken and always failed, thus this function never could run, bug #370.
2007-06-07[ospf6d] Fix silly bug: muse use strcmp to compare stringsAndrew J. Schorr
2007-06-07 Pavol Rusnak <prusnak@suse.cz> * ospf6_lsa.c: (no_debug_ospf6_lsa_hex_cmd) Fix bug: must use strcmp to compare strings.
2007-06-01[linux] Fix strange compilation problem by explicitly including <linux/types.h>Andrew J. Schorr
2007-06-01 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * zebra.h: On linux, we seem to need to include <linux/types.h> before <sys/sysctl.h>, otherwise we get isisd compilation errors about __be16 not being defined.
2007-05-30[zebra] Trivial patches so we can compile when IPv6 is not enabledAndrew J. Schorr
2007-05-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * zebra_routemap.c: (route_set_src_compile) Use '#ifdef HAVE_IPV6' as needed. * zebra_vty.c: (vty_show_ip_route_detail, vty_show_ip_route) Use '#ifdef HAVE_IPV6' as needed. (show_ip_protocol) Move function definition outside of '#ifdef HAVE_IPV6' section.