summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* [build] Improve portability by invoking gcc with -std=gnu99 instead of -std=c99ajs2007-04-302-1/+6
| | | | | | | 2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * configure.ac: Change gcc CFLAGS from '-std=c99' to '-std=gnu99' to improve portability.
* [ospfd] network command now behaves more logically when a peer prefix is definedajs2007-04-304-1/+21
| | | | | | | | | | | | 2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ospfd/ospfd.c: (ospf_network_match_iface) Comment out COMPATIBILITY_MODE. Going forward, the ospf "network" command will use a simple test: does the network command prefix contain the connected (destination) prefix of the interface? * doc/ospfd.texi: Add a paragraph to the description of the OSPFv2 network command to explain how we handle interfaces with peer addresses.
* [0.99] Version bump to 0.99.7quagga.0.99.7.releasepaul2007-04-292-1/+5
| | | | | | 2007-04-29 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.7
* [bgpd] Use defines for default weightpaul2007-04-293-15/+16
| | | | | | | | | | 2007-04-22 Sebastien Tandel <sebastien@tandel.be> * bgp_attr.h : Definition of BGP_ATTR_DEFAULT_WEIGHT. * bgp_attr.c : (bgp_attr_default_intern) now uses bgp_attr_default_set instead of duplicating the same code. (general) Use of BGP_ATTR_DEFAULT_WEIGHT. Replace two 16 by IPV6_MAX_BYTELEN.
* [bgpd] Fix warnings: hash callbacks should match hash API declarationspaul2007-04-296-17/+53
| | | | | | | | | | | | | | | | 2007-04-22 Sebastien Tandel <sebastien@tandel.be> * bgp_advertise.c : (baa_hash_alloc, baa_hash_key, baa_hash_cmp) conforms to quagga hash API. Defines _hash_[alloc|key|cmp] with void * arguments as defined by the API. * bgp_aspath.c,h : (aspath_key_make) conforms to quagga hash API. Defines _hash_[alloc|key|cmp] with void * arguments as defined by the API. * bgp_attr.c,h : (cluster_hash_alloc, cluster_hash_key_make, cluster_hash_cmp, transit_hash_alloc, transit_hash_key_make, transit_hash_cmp, attrhash_key_make, attrhash_cmp, bgp_attr_hash_alloc) conforms to quagga hash API. Defines _hash_[alloc|key|cmp] with void * arguments as defined by the API.
* [zebra/solaris] fix if_get_index passing wrong arg to lifreq_set_namepaul2007-04-292-1/+3
| | | | | | | 2007-04-29 Paul Jakma <paul.jakma@sun.com> * if_ioctl_solaris.c: (if_get_index) Fix bogus argument passed to lifreq_set_name().
* [zebra] Fix merge error in previous solaris changesetpaul2007-04-292-1/+5
| | | | | | 2007-04-29 Paul Jakma <paul.jakma@sun.com> * ioctl{_solaris,}.c: (if_get_mtu) Fix missing ; in last commit.
* [logging] Minor performance tweakajs2007-04-292-9/+20
| | | | | | 2007-04-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * log.c: (quagga_timestamp) Optimize the subsecond timestamp generation.
* [logging] Add new "log timestamp precision" command for subsecond timestampsajs2007-04-292-0/+23
| | | | | | 2007-04-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * basic.texi: Document the new 'log timestamp precision' command.
* [logging] Add new "log timestamp precision" command for subsecond timestampsajs2007-04-292-0/+33
| | | | | | | | | 2007-04-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * vtysh.c: (vtysh_log_timestamp_precision, no_vtysh_log_timestamp_precision) Implement new log timestamp precision commands: send to all daemons. (vtysh_init_vty) Install new log timestamp precision commands.
* [logging] Add new "log timestamp precision" command for subsecond timestampsajs2007-04-286-42/+179
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 2007-04-28 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * command.c: (config_write_host) Save "log timestamp precision" if not default value. (show_logging) Show configured timestamp precision. (config_log_timestamp_precision) Enable configuration of timestamp precision. (no_config_log_timestamp_precision) Restore default timestamp precision. (cmd_init) Install new timestamp precision commands. * log.h: (struct zlog) New timestamp_precision field. (quagga_timestamp) New function to generate a timestamp with the desired precision. (struct timestamp_control) Declare a structure for use in avoiding repeated duplicate calls to quagga_timestamp. * log.c: (quagga_timestamp) New function to generate a timestamp of the desired precision. (time_print) Call quagga_timestamp if the time hasn't already been calculated. (vzlog) Initialize a timestamp_control structure and pass it to time_print and vty_log. (zlog_backtrace) Fix 64-bit problem: cannot print size_t with %u. * vty.h: Must now include "log.h". (vty_log) Takes an additional struct timestamp_control argument. * vty.c: (vty_log_out) Use new struct timestamp_control and new quagga_timestamp function to print timestamps of the desired precision. (vty_time_print) Use new quagga_timestamp function. (vty_log) Accept new struct timestamp_control argument and pass it down to vty_log_out.
* [64-bit] Fix 4 problems with printf formats and 64-bit size_tajs2007-04-274-7/+16
| | | | | | | | 2007-04-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * lib/smux.c: (smux_trap) Fix printf format to work with 64-bit size_t. * ospf6d/ospf6_snmp.c: (ospfv3AreaEntry, ospfv3AreaLsdbEntry) Fix some zlog_debug printf formats to work with 64-bit size_t.
* [ripd, ripngd] Remove useless code in rip_vty_out_uptime functionajs2007-04-274-6/+8
| | | | | | | | 2007-04-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ripd/ripd.c: (rip_vty_out_uptime) Remove unused variable timer_now. * ripngd/ripngd.c: (ripng_vty_out_uptime) Remove unused variable timer_now.
* [ospfd] Fix bug in 'passive-interface default' behaviorajs2007-04-212-2/+10
| | | | | | | | | | 2007-04-21 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ospf_interface.c: (ospf_if_set_multicast) Fix bug: was testing interface passive status improperly in light of the recent 'passive-interface default' patch. Now need to test OSPF_IF_PASSIVE_STATUS(oi) instead of OSPF_IF_PARAM(oi, passive_interface).
* Use 'path (category)' form.dyoung2007-04-161-5/+4
|
* Note my change to zebra/connected.c.dyoung2007-04-161-0/+8
|
* Only suppress adding a connected route to the kernel if it isdyoung2007-04-161-1/+1
| | | | | already marked "real" (ZEBRA_IFC_REAL), i.e., "in kernel." According to Paul Jakma, this probably fixes Quagga bug #202.
* [bgpd] Minor performance improvement patchajs2007-04-152-10/+16
| | | | | | | 2007-04-15 Sebastien Tandel <sebastien@tandel.be> * bgp_aspath.c: (aspath_as_add, aspath_segment_add) Minor performance optimization: while loop should test one pointer instead of two.
* Fix the display of some timers. (show ipv6 ripng and show ipv6 ripng status)vincent2007-04-122-15/+10
|
* Fix the display of route timeout in "show ip rip". (Use ↵vincent2007-04-112-2/+7
| | | | thread_timer_remain_second)
* [zebra] MTU change should propogate to zserv client on BSD/Solarispaul2007-04-103-1/+19
| | | | | | | 2007-04-10 Paul Jakma <paul.jakma@sun.com> * ioctl{_solaris,}.c: (if_get_mtu) Ping clients via zebra_interface_up_update if MTU is changed.
* [bgpd] Bug #354: Take care to keep reads of MP_(UN)REACH_NLRI in boundspaul2007-04-102-25/+70
| | | | | | | | | | | | | | | | | | | | | | | | | 2007-04-08 Paul Jakma <paul.jakma@sun.com> * bgp_attr.c: (general) Bug #354: parsing of MP_REACH_NLRI and MP_UNREACH_NLRI does not take sufficient care to ensure reads from stream buffer stay in-bounds. Hence bgpd may attempt to read beyond end of stream, if given a crafted packet. As it uses the stream access methods to do so, this will typically result in assert() being hit in stream.c. Where code is compiled without assert() enabled, result is unknown. (struct message attr_str) should be static. (bgp_mp_reach_parse) Carefully check length remaining in stream against amount desired to read from stream, prior to each read, particularly where lengths are conditional on data obtained from stream - using STREAM_READABLE. Remove code to parse SNPA-number, it's a defunct field and changed to a fixed size in latest BGP MP update RFC - log warning if SNPA-number is not 0. (bgp_mp_unreach_parse) Check withdraw_length carefully against STREAM_READABLE. (bgp_attr_parse) If attribute-parser function returns error, log warning. Log attribute type on mismatch.
* [bgpd] V. quick route flap gets mistaken for duplicate, route is then ignoredpaul2007-04-102-3/+30
| | | | | | | | | | | | 2007-04-08 Paul Jakma <paul.jakma@sun.com> * bgp_route.c: (general) Same bug as fixed on 2006-11-28 by ajs for bgp static routes, but for main BGP RIB: Quick 'flap' of routes can cause bgpd to mistake a new route for a duplicate route, due to presence of removed, but not yet processed BGP RIB entry. (bgp_update_rsclient) Ignore REMOVED bgp_info for duplicate, restore route instead. (bgp_update_main) Ditto.
* [zebra] Retain configured IPv4 address upon removal by kernelpaul2007-04-102-14/+24
| | | | | | | | 2007-04-08 Paul Jakma <paul.jakma@sun.com> * interface.c: (if_delete_update) Address removal triggered by kernel shouldn't remove configured IPv4 address from connected list.
* [testzebra] stubs should call kernel_address_add on IP address installpaul2007-04-103-6/+37
| | | | | | | | 2007-04-08 Paul Jakma <paul.jakma@sun.com> * {ioctl,kernel}_null.c: Install of IP address should reflect back to zebra via kernel_address_add..., makes testzebra more useful.
* [zebra] Bug #351: Don't redistribute routes to ipv4 link-local prefixespaul2007-04-106-11/+24
| | | | | | | | | | | 2007-04-07 Paul Jakma <paul.jakma@sun.com> * lib/prefix.h: Add define to match IPv4 Link-Local addresses * zebra/redistribute.c: (zebra_check_addr) Don't redistribute routes to IPv4 link-local prefixes, fixes bug #351. * zebra/redistribute.h: Export zebra_check_addr. * zebra/router-id.c: (router_id_bad_address) re-use zebra_check_addr rather than implementing similar logic.
* [bgpd] bug #352: IPv6/Multicast address-family config not written outpaul2007-04-102-1/+16
| | | | | | | | | 2007-04-07 Paul Jakma <paul.jakma@sun.com> * bgpd.c: (general) Fix bug #352 (bgp_config_write_family_header) write ipv6/multicast address family header. (bgp_config_write) write out ipv6 multicast AF config.
* [ospfd] Bug #330 regression: failure to calculate routes through networkspaul2007-03-232-1/+5
| | | | | | | | 2007-03-23 Paul Jakma <paul.jakma@sun.com> * ospf_spf.c: (ospf_nexthop_calculation) Fix silly regression causing ospfd to fail to calculate paths past networks not attached to root vertex, introduced with bug #330 fixes.
* [ospfd] Instrument ospf_spf with more debug log messagespaul2007-03-232-3/+43
| | | | | | 2007-03-23 Paul Jakma <paul.jakma@sun.com> * ospf_spf.c: (various) Add more debug statements.
* [doc] Makefile VPATH patchajs2007-03-212-2/+7
| | | | | | | 2007-03-21 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * Makefile.am: Patch rule for draft-zebra-00.txt to work in VPATH build environments.
* [ripd] Fix "show ip rip status" display of time until next updateajs2007-03-212-13/+9
| | | | | | | | | 2007-03-21 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ripd.c: (show_ip_rip_status) Use new thread_timer_remain_second function instead of rip_next_thread_timer to display the time until next update properly. (rip_next_thread_timer) Remove obsolete function.
* [lib] Make message lookup function more robust.ajs2007-03-202-8/+30
| | | | | | | | | 2007-03-20 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * log.c: (mes_lookup) Make the function more robust: check for cases where the index does not match the key value at that position. If so, give a warning and fall back to a linear search. And improve the error message in cases where even that fails.
* [ospfd] Return SNMP standard neighbor state values, not quagga internal onesajs2007-03-142-1/+45
| | | | | | | | 2007-03-14 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ospf_snmp.c: (ospf_snmp_neighbor_state) New function to map internal quagga neighbor states to SNMP standard values. (ospfNbrEntry) Call new ospf_snmp_neighbor_state function.
* [ospfd] Fix two debug messages that used inet_ntoa more than onceajs2007-03-142-6/+20
| | | | | | | | | 2007-03-14 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ospf_zebra.c: (ospf_zebra_add, ospf_zebra_delete) Fix bug where inet_ntoa was used twice in the same debug message, which doesn't work because there's a single shared buffer for the returned string. The fix is to use inet_ntop.
* [ospf6d] Bug 322: ospf6d show ipv6 neighbour showing wrong timespaul2007-03-082-1/+7
| | | | | | | | 2007-03-08 David Siebörger d.sieborger@ru.ac.za * ospf6_neighbor.c: (ospf6_neighbor_show) Fix bug #322, ospf6d wasn't updated to match thread times changing to relative time.
* [zebra] Fix interface metric bug on BSDpaul2007-03-062-1/+15
| | | | | | | | | 2007-03-06 Paul Jakma <paul.jakma@sun.com> * kernel_socket.c: (ifam_read) Do not update interface metric on receipt of NEW/DEL ADDR messages, bogus as: a) some systems dont include iface metric for address events b) we didn't update clients either. Initial diagnosis by Eugene Grosbein.
* [ospf6d] Fix string comparison bug in ospf6_lsa_handler_name.ajs2007-02-272-1/+6
| | | | | | | 2007-02-27 Pavol Rusnak <prusnak@suse.cz> * ospf6_lsa.c: (ospf6_lsa_handler_name) Fix bug: must use strcmp to compare strings.
* [ospfd] Fix bug: should exit immediately on SIGTERM if OSPF not actually runningajs2007-02-272-0/+10
| | | | | | | | 2007-02-27 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * ospfd.c: (ospf_terminate) Exit immediately if ospf is not actually running (e.g. the config file was empty). Fixes bug where SIGTERM would not kill ospfd.
* [ospfd] Fix regression in SPF introduced by bug#330 fixespaul2007-02-262-21/+42
| | | | | | | | | | | | | | | | | | | 2007-02-26 Paul Jakma <paul.jakma@sun.com> * ospf_spf.c: Fix regression introduced with bug #330 fix: The cost update added to ospf_spf_add_parent only handled PtP case, differing from same functionality in higher-level ospf_spf_next. Regression diagnosed by Anders Pedersen, mailnews+router-quagga-dev@news.cohaesio.com. (ospf_vertex_new) Initialise vertices to max-cost. (ospf_spf_init) Root vertex always creates with 0 cost. (ospf_spf_add_parent) Remove the buggy V->W cost calculating code, instead take the new distance as a parameter. (ospf_nexthop_calculation) Take distance as parameter, so it can be passed down to add_parent. (ospf_spf_next) Dont initialise candiate vertex distance, vertex_new does so already. Pass distance down to nexthop_calculation (see above).
* [zebra] IRDP should ignore non-IPv4 addressespaul2007-02-262-0/+10
| | | | | | | | 2007-02-26 Robert Olsson <Robert.Olsson@data.slu.se> * irdp_main.c: (irdp_send_thread) Skip non-AF_INET addresses, i.e. do not try interpret IPv6 addresses as IPv4 addresses to broadcast in IRDP announcements..
* [solaris] Add licence boilerplate to files for claritypaul2007-02-223-0/+39
| | | | | | | 2007-02-22 Paul Jakma <paul.jakma@sun.com> * quagga.{xml,init}.in: Add licence boilerplate to ensure licence terms are clear.
* [bgpd] Peer delete can race with reconfig leading to crashpaul2007-02-223-33/+92
| | | | | | | | | | | | | | | | | | | 2007-02-22 Paul Jakma <paul.jakma@sun.com> * bgp_fsm.c: (bgp_fsm_change_status) Handle state change into clearing or greater here. Simpler. (bgp_event) Clearing state change work moved to previous * bgp_route.c: (bgp_clear_route_node) Clearing adj-in here is too late, as it leaves a race between a peer being deleted and an identical peer being configured before clearing completes, leading to a crash. Simplest fix is to clean peers Adj-in up-front, rather than queueing such work. (bgp_clear_route_table) Clear peer's Adj-In and Adj-Out up-front here, rather than queueing such work. Extensive comment added on the various bits of indexed data that exist and how they need to be dealt with. (bgp_clear_route) Update comment.
* use generic sed test so this works on autoconf 2.59gdt2007-02-062-1/+10
|
* de-support NetBSD 1.6, and note that FreeBSD 4 is on thin ice.gdt2007-02-061-18/+18
| | | | | | | | | | | | Update notes on required tool versions Note that autoconf 2.59 is the standard (even though it's old, 2.60 and 2.61 are pretty recent). For others, pick releases that are at least 1.5 years old. Note that GNU awk is required. Replace update-autotools reference with bootstrap.sh. (no changelog, doc change only, per GNU coding standards)
* Better comment explaining that GNU awk is really required.gdt2007-02-061-1/+2
|
* autoreconf -igdt2007-02-062-3/+7
|
* add AC_PROC_SEDgdt2007-02-032-0/+6
|
* remove crufty m4 files from 2004. With the files, autoheader (2.61)gdt2007-02-038-6874/+6
| | | | | | | | bombs on NetBSD. (Without, all is ok. We may need workarounds, but first we should identify minimum tool versions and figure out what's still wrong.) ok'd by paul.
* use bootstrap.shgdt2007-02-022-3/+3
|
* Provide 'standard interface', even if it just invokes autoreconf.gdt2007-02-022-0/+9
|