--------------------- PatchSet 1470 Date: 2005/11/12 22:36:41 Author: paul Branch: HEAD Tag: (none) Log: [lib] 'show route-map' should print call action seperate from exit policy 2005-11-12 Paul Jakma * routemap.c: (vty_show_route_map_entry) call action is seperate from exit action, latter should still be printed regardless of whether a call is specified. Members: lib/ChangeLog:1.220->1.221 lib/routemap.c:1.15->1.16 --------------------- PatchSet 1471 Date: 2005/11/12 22:55:10 Author: paul Branch: HEAD Tag: (none) Log: [solaris] Extra debug and cross-checks for kernel_socket, two Sol9 fixes. 2005-11-12 Alexander Gall * See [quagga-dev 1815] * kernel_socket.c: (rtm_write) Use SAROUNDUP when HAVE_SIN_LEN is not available. * rt_socket.c: (kernel_rtm_ipv6(_multipath)) set family to AF_INET6 on ipv6 routes. 2005-11-12 Paul Jakma * kernel_socket.c: Add RTA_NAME_GET macro to extract name from sockaddr_dl. Add some more RTF_ flags. * (ifan_read) Add some debug messages. * (ifm_read) Add more debug messages. More robust cross-checks of index against name. Fall back to by-name lookup if the index lookup fails, future proofing more than anything else. (ifam_read_mesg) Read RTA_IFP. Add debug messages. (ifam_read) More debug. If there's an RTA_IFP and it isn't the name of the interface, save it as the label. (rtm_read_mesg) Read RTA_IFP. (rtm_read) allow name to be retrieved. (rtmsg_debug) expand on the debug message. Members: zebra/ChangeLog:1.106->1.107 zebra/kernel_socket.c:1.31->1.32 zebra/rt_socket.c:1.6->1.7 --------------------- PatchSet 1472 Date: 2005/11/14 11:11:11 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] misc small fixes. Fix default stub router setting. no opaque compile. 2005-11-14 Paul Jakma * ospfd.c: (ospf_new) stub-shutdown should just default to unconfigured, too strange otherwise. (ospf_finish_final) t_opaque_lsa_self TIMER_OFF should be preprocessor conditional on HAVE_OPAQUE_LSA. * ospfd.h: (struct ospf) remove the SHUTDOWN_DEFAULT define. no longer used, plus it wasn't in range that the command accepted. * ospf_zebra.h: Depends on vty.h, include it. Members: ospfd/ChangeLog:1.153->1.154 ospfd/ospf_zebra.h:1.3->1.4 ospfd/ospfd.c:1.35->1.36 ospfd/ospfd.h:1.20->1.21 --------------------- PatchSet 1473 Date: 2005/11/14 12:07:47 Author: paul Branch: HEAD Tag: (none) Log: 2005-11-14 Paul Jakma * (general) Add state to detect queue floods. There's no sense trying to be sparing of CPU resources, if the queue is flooding and using ever more memory resources. we should just get on with clearing the queue. The sense of delay and hold were wrong way around, fix. * workqueue.h: (struct work_queue) Add status bitfield. Add 'flood' integer to workqueue spec. Add runs_since_clear counter to workqueue. * workqueue.c: (work_queue_new) set defaults for delay, hold and flood. (work_queue_add) initial schedule should use delay, not hold. (show_work_queues) Print flood field, conserve whitespace. (work_queue_unplug) use delay, not hold. (work_queue_run) consecutive runs should be seperated by hold time, not delay. Keep track of number of consecutive runs, go into 'overdrive' if queue is being flooded, we can't avoid making heavy use of resources, better to use CPU than ever more RAM. Members: lib/ChangeLog:1.221->1.222 lib/workqueue.c:1.4->1.5 lib/workqueue.h:1.4->1.5 --------------------- PatchSet 1474 Date: 2005/11/14 14:05:35 Author: paul Branch: HEAD Tag: (none) Log: [bug #231] check and include stdint.h, also add std=c99 to gcc CFLAGS 2005-11-14 Paul Jakma * configure.ac: Tell gcc we like C99. [bug #231] Check and test for stdint.h. * lib/zebra.h: [bug #231] include stdint, if its there. Members: ChangeLog:1.137->1.138 configure.ac:1.114->1.115 lib/ChangeLog:1.222->1.223 lib/zebra.h:1.37->1.38 --------------------- PatchSet 1475 Date: 2005/11/14 14:31:49 Author: paul Branch: HEAD Tag: (none) Log: 2005-11-14 Paul Jakma * zebra_rib.c: (rib_process) convert to new workqueue specs and shut up gcc, which complains about cast from void via function parameters, for some dumb reason. Do the cast inside the function instead. (rib_queue_qnode_del) ditto. (rib_queue_init) no need for the casts anymore. Members: bgpd/ChangeLog:1.75->1.76 bgpd/bgp_route.c:1.36->1.37 zebra/ChangeLog:1.107->1.108 zebra/zebra_rib.c:INITIAL->1.25 --------------------- PatchSet 1476 Date: 2005/11/14 14:46:35 Author: paul Branch: HEAD Tag: (none) Log: [workqueue] Update workqueue users callbacks to additional arguments 2005-11-14 Paul Jakma * (general) pass struct work-queue to callback functions. * workqueue.h: (struct work_queue) move the state flag variables to end. Add an opaque pointer to spec, for user-data global to the queue. Pass reference to work_queue to all callbacks. * workqueue.c: (work_queue_item_remove) pass ref to workqueue to user callbacks. (work_queue_run) ditto. Members: lib/ChangeLog:1.223->1.224 lib/workqueue.c:1.5->1.6 lib/workqueue.h:1.5->1.6 --------------------- PatchSet 1477 Date: 2005/11/16 19:33:22 Author: ajs Branch: HEAD Tag: (none) Log: [ospfd] Make OSPF_ISM_TIMER_OFF macro safer. 2005-11-16 Andrew J. Schorr * ospf_ism.h: (OSPF_ISM_TIMER_OFF) Improve macro syntax by enclosing in 'do {...} while(0)'. Members: ospfd/ChangeLog:1.154->1.155 ospfd/ospf_ism.h:1.4->1.5 --------------------- PatchSet 1478 Date: 2005/11/16 20:17:52 Author: ajs Branch: HEAD Tag: (none) Log: [ospfd] Standardize buffer sizes used for displaying timers. 2005-11-16 Andrew J. Schorr * ospf_dump.h: Define OSPF_TIME_DUMP_SIZE as appropriate buffer size for use with ospf_timer_dump and ospf_timeval_dump. * ospf_vty.c: Change all buffer sizes used with ospf_timer_dump and ospf_timeval_dump to have size OSPF_TIME_DUMP_SIZE. (show_ip_ospf_interface_sub) Fix possible buffer overflow in call to ospf_timer_dump. Members: ospfd/ChangeLog:1.155->1.156 ospfd/ospf_dump.h:1.6->1.7 ospfd/ospf_vty.c:1.45->1.46 --------------------- PatchSet 1479 Date: 2005/11/20 02:09:32 Author: paul Branch: HEAD Tag: (none) Log: - quagga.spec.in: Release sub-rev now release_rev macro, for rpmbuild -D Members: redhat/quagga.spec.in:1.29->1.30 --------------------- PatchSet 1480 Date: 2005/11/20 02:15:50 Author: paul Branch: HEAD Tag: (none) Log: [isisd] remove includes of common system headers. 2005-11-20 Paul Jakma * (general) remove includes of very common system headers, these are already picked up by zebra.h. Further, including them before zebra.h messes up all our lovely (sarcasm) autoconf'd detecting of platform specific things. Recent addition of stdint.h to configure.ac and zebra.h appears particularly to throw up this problem. Members: isisd/ChangeLog:1.76->1.77 isisd/isis_adjacency.c:1.14->1.15 isisd/isis_circuit.c:1.21->1.22 isisd/isis_dynhn.c:1.6->1.7 isisd/isis_events.c:1.14->1.15 isisd/isis_lsp.c:1.36->1.37 isisd/isis_main.c:1.20->1.21 isisd/isis_misc.c:1.9->1.10 isisd/isis_network.c:1.10->1.11 isisd/isis_pdu.c:1.22->1.23 isisd/isis_route.c:1.12->1.13 isisd/isis_routemap.c:1.5->1.6 isisd/isis_spf.c:1.20->1.21 --------------------- PatchSet 1481 Date: 2005/11/20 14:50:45 Author: paul Branch: HEAD Tag: (none) Log: 2005-11-20 Paul Jakma * ospfd.h: remove the OSPF_ROUTER_ID_UPDATE_DELAY define (struct ospf) remove the router_id timer thread. remove export of ospf_router_id_update_timer. * ospfd.c: (ospf_router_id_update) call ospf_if_update to poke interfaces into action after ID has been configured. (ospf_router_id_update_timer) removed. (ospf_finish_final) t_router_id_update timer is gone. (ospf_network_run) router-id update timer gone. call ospf_router_id_update directly if ID not configured. In the per-iface loop, don't ospf_if_up interfaces if ID is still not configured. The update function will call ospf_if_update anyway. (ospf_if_update) ID update timer is gone. Just return if no ID is set. * ospf_vty.c: (ospf_router_id) call ospf_router_id_update, no timer needed. * ospf_zebra.c: (ospf_router_id_update_zebra) call ospf_router_id_update directly, not via timer. Members: ospfd/ChangeLog:1.156->1.157 ospfd/ospf_vty.c:1.46->1.47 ospfd/ospf_zebra.c:1.35->1.36 ospfd/ospfd.c:1.36->1.37 ospfd/ospfd.h:1.21->1.22 --------------------- PatchSet 1482 Date: 2005/11/20 14:54:12 Author: paul Branch: HEAD Tag: (none) Log: 2005-11-20 Paul Jakma * ospf_abr.c: (ospf_abr_announce_network_to_area) check returned LSA of ospf_summary_lsa_refresh and print warning if it failed. (ospf_abr_announce_network_to_area) similar (ospf_abr_announce_rtr_to_area) similar * ospf_lsa.c: (ospf_router_lsa_new) check LSA returned is valid. (ospf_router_lsa_originate) similar (ospf_router_lsa_refresh, ospf_network_lsa_new) similar (ospf_summary_lsa_new) Check ID is valid. (ospf_summary_lsa_originate) ditto, and check returned LSA from previous function is !NULL. (ospf_summary_lsa_refresh) check ospf_summary_lsa_new return is !NULL. (ospf_summary_asbr_lsa_new) ID valid check. (ospf_summary_asbr_lsa_originate) similar. Members: ospfd/ChangeLog:1.157->1.158 ospfd/ospf_abr.c:1.19->1.20 ospfd/ospf_lsa.c:1.39->1.40 --------------------- PatchSet 1483 Date: 2005/11/23 02:47:02 Author: paul Branch: HEAD Tag: (none) Log: [bgp] Fix SEGV if empty path is confed-compared ([quagga-users 5968]) 2005-11-23 Paul Jakma * bgp_aspath.c: (assegments_parse) should be static 2005-11-23 Juergen Kammer * bgp_aspath.c: (aspath_cmp_left_confed) fix SEGV for case where one or both paths are empty. Members: bgpd/ChangeLog:1.76->1.77 bgpd/bgp_aspath.c:1.7->1.8 --------------------- PatchSet 1484 Date: 2005/11/23 02:48:14 Author: paul Branch: HEAD Tag: (none) Log: [tests] Add empty-path and sequence+1ASN test data to aspath_test.c 2005-11-23 Paul Jakma * aspath_test.c: Add an empty aspath to test segments, and to compare tests. Add a segment identical to seq1, but with one extra asn. Fix bogus free of stream in make_aspath for case where no stream was allocated (empty path data). Members: tests/ChangeLog:1.10->1.11 tests/aspath_test.c:1.2->1.3 --------------------- PatchSet 1485 Date: 2005/11/23 13:02:08 Author: paul Branch: HEAD Tag: (none) Log: [zebra] fix some small compile errors, mark several functions static 2005-11-23 Paul Jakma * (general) fix some small compile errors, and mark several functions as static. * kernel_socket.c: (ifan_read) should be static. fix missing brackets. (ifm_read,ifam_read,rtm_read_mesg,kernel_read) Make static (ifam_read_mesg) make static. fix incorrect variable name. (rtm_read) make static. Fix call to rib_delete_ipv4 which should be rib_delete_ipv6. (routing_socket,kernel_init) should be static. Void argument should be specified as such, not left incomplete. * rt_netlink.c: rt.h should be included, contains prototypes of exported functions. (kernel_delete_ipv6_old) fix sign of index argument. * rt_socket.c: Exact same as previous. Also, make various functions static. * rtread_getmsg.c: Include zserv.h, which prototypes route_read. Make static. * rtread_sysctl.c: zserv.h and rt.h should be included. fix definition of route_read. Members: zebra/ChangeLog:1.108->1.109 zebra/kernel_socket.c:1.32->1.33 zebra/rt_netlink.c:1.40->1.41 zebra/rt_socket.c:1.7->1.8 zebra/rtread_getmsg.c:1.2->1.3 zebra/rtread_sysctl.c:1.2->1.3 --------------------- PatchSet 1486 Date: 2005/11/24 12:40:39 Author: paul Branch: HEAD Tag: (none) Log: [ospfclient] add static qualifier 2005-11-24 Paul Jakma * ospf_apiclient.c: add static qualifier to relevant functions. * ospfclient.c: ditto Members: ospfclient/ChangeLog:1.3->1.4 ospfclient/ospf_apiclient.c:1.3->1.4 ospfclient/ospfclient.c:1.3->1.4 --------------------- PatchSet 1487 Date: 2005/11/24 12:47:17 Author: paul Branch: HEAD Tag: (none) Log: [privs/solaris] Fix unused variable and incorrect format string. 2005-11-24 Paul Jakma * privs.c: (zcaps2sys/solaris) remove unused variable. (zprivs_state_caps/solaris) Format string missing a specifier. Members: lib/ChangeLog:1.224->1.225 lib/privs.c:1.8->1.9 --------------------- PatchSet 1488 Date: 2005/11/24 12:51:24 Author: paul Branch: HEAD Tag: (none) Log: [lib/zebra.h] fix Linux compile error 2005-11-24 Paul Jakma * zebra.h: s/u_int/unsigned int/, u_int is a BSD type, defining __USE_BSD on Linux pulls in further things from netinet/ip.h which dont preprocess for some reason. There is no C99 shorthand type directly equivalent to u_int afaict, so don't use it. Members: lib/ChangeLog:1.225->1.226 lib/zebra.h:1.38->1.39 --------------------- PatchSet 1489 Date: 2005/11/24 15:15:17 Author: paul Branch: HEAD Tag: (none) Log: [zebra] Fix mistake in previous commit and further compile warnings/errors. 2005-11-24 Paul Jakma * kernel_socket.h: New header for functions exported to sysctl methods. * kernel_socket.c: include previous. Remove static qualifier from couple of functions which are used by sysctl methods, incorrectly added in previous commit. Add a workaround for a bogus gcc warning to the RTA_ macros. * Makefile.am: Add kernel_socket.h to noinst_HEADERS * if_sysctl.c: include rt.h and kernel_socket.h and remove redundant prototypes. * rtread_sysctl.c: ditto. (route_read) fix mismatch of return values. * {rt,zserv,rib}.h: Include lib headers depended on. Members: zebra/ChangeLog:1.109->1.110 zebra/Makefile.am:1.11->1.12 zebra/if_sysctl.c:1.2->1.3 zebra/kernel_socket.c:1.33->1.34 zebra/kernel_socket.h:INITIAL->1.1 zebra/rib.h:1.9->1.10 zebra/rt.h:1.2->1.3 zebra/rtread_sysctl.c:1.3->1.4 zebra/zserv.h:1.13->1.14 --------------------- PatchSet 1490 Date: 2005/11/25 20:23:46 Author: paul Branch: HEAD Tag: (none) Log: 2005-11-25 Paul Jakma * texinfo.tex: update to newer version, seems to now properly scale the diagramme images in PDF output. Members: doc/ChangeLog:1.52->1.53 doc/texinfo.tex:INITIAL->1.4 --------------------- PatchSet 1491 Date: 2005/11/26 08:28:00 Author: paul Branch: HEAD Tag: (none) Log: [build] Set default CFLAGS for SunPro, rationalise CFLAGS defaults. 2005-11-26 Paul Jakma * configure.ac: Collect together CFLAGS based on compiler detected a bit. Recognise and set default CFLAGS for SunPro / SOS10. Members: ChangeLog:1.138->1.139 configure.ac:1.115->1.116 --------------------- PatchSet 1492 Date: 2005/11/26 09:14:07 Author: paul Branch: HEAD Tag: (none) Log: [zebra] fix connected_add_ipv6 declarations, label should be const. 2005-11-26 Paul Jakma * connected.{c,h}: (connected_add_ipv6) label should have const qualifier, fix declarations. Members: zebra/ChangeLog:1.110->1.111 zebra/connected.c:1.19->1.20 zebra/connected.h:1.5->1.6 --------------------- PatchSet 1493 Date: 2005/11/26 09:21:43 Author: paul Branch: HEAD Tag: (none) Log: [c99] change gcc zero-length array to C99 flexible array declaration 2005-11-26 Paul Jakma * buffer.c: (struct buffer_data) change gcc zero array declaration to C99 incomplete array. * stream.h: (struct stream) same * ospf_api.c: (struct opaque_lsa) same Members: lib/ChangeLog:1.226->1.227 lib/buffer.c:1.11->1.12 lib/stream.h:1.9->1.10 ospfd/ChangeLog:1.158->1.159 ospfd/ospf_api.c:1.4->1.5 --------------------- PatchSet 1494 Date: 2005/11/26 13:31:11 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] rename graceful to deferred, fix a tiny compile warning. 2005-11-26 Paul Jakma * (general) s/graceful/deferred/ in all files, the former term is confusing wrt OSPF Graceful-Restart. * ospfd.c: (ospf_deferred_shutdown_check) dont return a function which returns void. SOS complains about this. (ospf_finish) Members: ospfd/ChangeLog:1.159->1.160 ospfd/ospf_vty.c:1.47->1.48 ospfd/ospfd.c:1.37->1.38 ospfd/ospfd.h:1.22->1.23 --------------------- PatchSet 1495 Date: 2005/12/29 15:40:49 Author: gdt Branch: HEAD Tag: (none) Log: shell script and hints for building on NetBSD. (gdt deleted private copy by accident when getting a fresh checkout, and on recovery would like to have it safe, and also it may be useful to others.) Members: README.NetBSD:INITIAL->1.1 --------------------- PatchSet 1496 Date: 2005/12/29 15:59:57 Author: gdt Branch: HEAD Tag: (none) Log: 2005-12-29 Greg Troxel * rt_socket.c (kernel_rtm_ipv4): Use AF_INET rather than AF_UNSPEC for mask. From David Young. Members: zebra/ChangeLog:1.111->1.112 zebra/rt_socket.c:1.8->1.9 --------------------- PatchSet 1497 Date: 2005/12/29 16:03:32 Author: gdt Branch: HEAD Tag: (none) Log: 2005-12-29 Greg Troxel * vty.c (vty_hello): add cast to quiet lint (from David Young) (patch-lint) Members: lib/ChangeLog:1.227->1.228 lib/vty.c:1.47->1.48 --------------------- PatchSet 1498 Date: 2005/12/29 16:04:53 Author: gdt Branch: HEAD Tag: (none) Log: remove dead code (from David Young) Members: zebra/ChangeLog:1.112->1.113 zebra/kernel_socket.c:1.34->1.35 --------------------- PatchSet 1499 Date: 2006/01/10 14:35:19 Author: paul Branch: HEAD Tag: (none) Log: [stream] Add quad-word support and stream_resize 2006-01-10 Paul Jakma * stream.c: (stream_new) Allocate stream data as seperate object. (stream_free) free the data. (stream_resize) new function, resize stream to new size. (stream_{get,put}q*) new functions to get/put quad word size types. * stream.h: (struct stream) make data seperate from the stream. Export new stream_resize and quad-word get/put functions. Members: lib/ChangeLog:1.228->1.229 lib/stream.c:1.10->1.11 lib/stream.h:1.10->1.11 --------------------- PatchSet 1500 Date: 2006/01/10 14:49:04 Author: paul Branch: HEAD Tag: (none) Log: [tests] Add small unit test for the new stream functions 2006-01-10 Paul Jakma * test-stream.c: new file, small unit test for new resize and {put,get}-quad stream functions. * Makefile.am: build teststream unit test. Members: tests/ChangeLog:1.11->1.12 tests/Makefile.am:1.6->1.7 tests/test-stream.c:INITIAL->1.1 --------------------- PatchSet 1501 Date: 2006/01/10 20:34:46 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] fix automatic router-id and network enable bug. 2006-01-10 Paul Jakma * ospfd.c: (ospf_network_run) checking to see if router-id is set should be on ospf->router_id, not router_id_static. This was causing ospfd to not start if router-id had not been configured statically. (ospf_if_update) ditto. Members: ospfd/ChangeLog:1.160->1.161 ospfd/ospfd.c:1.38->1.39 --------------------- PatchSet 1502 Date: 2006/01/10 20:36:49 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] trim redundant strings 2006-01-10 Paul Jakma * ospf_vty.c: (config_write_ospf_distribute) trim down redundant strings. Members: ospfd/ChangeLog:1.161->1.162 ospfd/ospf_vty.c:1.48->1.49 --------------------- PatchSet 1503 Date: 2006/01/10 22:11:54 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] fix rare leak of struct connected, in an error path. 2006-01-10 Juris Kalnins * ospf_zebra.c: (ospf_interface_address_delete) fix rare leak of struct connected in an error case. Members: ospfd/ChangeLog:1.162->1.163 ospfd/ospf_zebra.c:1.36->1.37 --------------------- PatchSet 1504 Date: 2006/01/10 22:15:45 Author: paul Branch: HEAD Tag: (none) Log: [bgpd] remove export of long defunct function 2006-01-10 Juris Kalnins * bgpd.h: (bgp_router_id_unset) ex-function, remove. Members: bgpd/ChangeLog:1.77->1.78 bgpd/bgpd.h:1.24->1.25 --------------------- PatchSet 1505 Date: 2006/01/10 23:27:05 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] fix undefined effect expression 2006-01-10 Juris Kalnins * ospf_packet.c: (ospf_make_md5_digest) fix odd, if not undefined effect, assignment of an increment expression. Members: ospfd/ChangeLog:1.163->1.164 ospfd/ospf_packet.c:1.83->1.84 --------------------- PatchSet 1506 Date: 2006/01/11 01:08:19 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] Bug #234. Fix nbr_self reinitialisation after down/up. 2006-01-10 Len Sorensen * (general) Bug #234, see also [quagga-dev 3902]. Fix problem with nbr_self not being properly reinitialised when an interface comes up, after having been down. Some re-arrangement done by Paul Jakma, any bugs introduced on top of Len's suggested changes are his. * ospf_neighbor.c: (ospf_nbr_add_self) centralise initialisation of nbr_self parameters here. * ospf_interface.c: (ospf_if_new) deleting initialisation of parameters of nbr_self, just rely on call to ospf_nbr_add_self. (ospf_if_cleanup) ditto. * ospfd.c: (ospf_network_run) ditto. Members: ospfd/ChangeLog:1.164->1.165 ospfd/ospf_interface.c:1.38->1.39 ospfd/ospf_neighbor.c:1.8->1.9 ospfd/ospfd.c:1.39->1.40 --------------------- PatchSet 1507 Date: 2006/01/11 01:38:25 Author: paul Branch: HEAD Tag: (none) Log: 2006-01-11 Erik Smit * vtysh.c: (vtysh_config_from_file) fix regression from a previous cleanup, vtysh_client.flags and cmd->daemon are bitwise flags, bitwise & was meant to be used. Fixes breakage of integrated config file reading. Members: vtysh/ChangeLog:1.43->1.44 vtysh/vtysh.c:1.45->1.46 --------------------- PatchSet 1508 Date: 2006/01/11 01:59:04 Author: paul Branch: HEAD Tag: (none) Log: [zserv] Update interface flags to 8 bytes wide. 2006-01-11 Paul Jakma * if.h: (struct interface) expand flags to 8 bytes. * zclient.c: (zebra_interface_{add,state}_read) stream read of interface flags now need to use stream_getq. (zebra_interface_if_set_value) ditto 2006-01-11 Paul Jakma * zserv.c: (zsend_interface_{add,delete,update}) if flags are 8 bytes now, update to write out with stream_putq. Members: lib/ChangeLog:1.229->1.230 lib/if.h:1.21->1.22 lib/zclient.c:1.18->1.19 zebra/ChangeLog:1.113->1.114 zebra/zserv.c:1.35->1.36 --------------------- PatchSet 1509 Date: 2006/01/16 01:54:02 Author: paul Branch: HEAD Tag: (none) Log: [zserv] Extend Zserv header with version information and marker field 2006-01-16 Paul Jakma * lib/zclient.h: Update the Zserv protocol header with a version field. Define the old command field to be a 'marker', to allow old Zserv and updated Zserv to be differentiated. Future updates will bump the version field obviously. New command field is made wider. Try to stop using the 'zebra_size_t' typedef in the callbacks. * lib/zclient.c: Update to read/write new format header. * zebra/zserv.c: Ditto Members: lib/ChangeLog:1.230->1.231 lib/zclient.c:1.19->1.20 lib/zclient.h:1.6->1.7 lib/zebra.h:1.39->1.40 zebra/ChangeLog:1.114->1.115 zebra/zserv.c:1.36->1.37 --------------------- PatchSet 1510 Date: 2006/01/16 11:13:27 Author: paul Branch: HEAD Tag: (none) Log: [bgpd] fix some leaks introduced in aspath rewrite. 2006-01-16 Paul Jakma * bgp_aspath.c: (assegment_append_asns) XREALLOC can return NULL theoretically, take care not to lose the allocated data. (aspath_hash_alloc) aspath_dup already set the aspath string - fix leak. (aspath_parse) aspath_hash_alloc dupes the entire aspath, including segments, but we forgot to free the temporary assegment. Members: bgpd/ChangeLog:1.78->1.79 bgpd/bgp_aspath.c:1.8->1.9 --------------------- PatchSet 1511 Date: 2006/01/16 12:01:29 Author: paul Branch: HEAD Tag: (none) Log: [bgpd] add aspath_finish, static resource cleanup function. 2006-01-16 Paul Jakma * bgp_aspath.c: (aspath_snmp_pathseg) move the static stream pointer out to file scope, so it can be freed. (aspath_finish) new function, free aspath resources. * bgp_aspath.h: (aspath_finish) export. Members: bgpd/ChangeLog:1.79->1.80 bgpd/bgp_aspath.c:1.9->1.10 bgpd/bgp_aspath.h:1.6->1.7 --------------------- PatchSet 1512 Date: 2006/01/16 12:06:00 Author: paul Branch: HEAD Tag: (none) Log: 2006-01-16 Paul Jakma * aspath_test.c: (validate) free the temporary aspaths. (empty_get_test) ditto. Members: tests/ChangeLog:1.12->1.13 tests/aspath_test.c:1.3->1.4 --------------------- PatchSet 1513 Date: 2006/01/17 17:26:25 Author: paul Branch: HEAD Tag: (none) Log: [ripd] Fix verification of received MD5 authenticated packets 2006-01-17 Paul Jakma * ripd.c: (rip_auth_md5) remove pdigest, not needed. Use a local buffer for the auth_str, where it can be properly nul padded. Do so, hence fixing MD5 authentication. Key looked up via key ring should be used in preference to the RIPv1 simple password, not other way around. No need to copy around digests, we can reference them directly. The auth_len received can't be trusted, some implementations lie (e.g. older ripd). (rip_auth_md5_ah_write) rename len local variable to doff to be consistent with other functions. (rip_auth_header_write) add the missing return. (rip_auth_md5_set) use the proper constructs to access stream. Members: ripd/ChangeLog:1.54->1.55 ripd/ripd.c:1.53->1.54 --------------------- PatchSet 1514 Date: 2006/01/17 17:33:46 Author: paul Branch: HEAD Tag: (none) Log: [zserv] fix up custom isisd and bgpd Zserv functions for new format. 2006-01-17 Paul Jakma * bgp_nexthop.c: (zlookup_read*) convert to new Zserv format. (zlookup_query_ipv6) ditto. (bgp_import_check) ditto. * isis_zebra.c: (isis_zebra_route_add_ipv4) fix for new zserv format. Members: bgpd/ChangeLog:1.80->1.81 bgpd/bgp_nexthop.c:1.14->1.15 isisd/ChangeLog:1.77->1.78 isisd/isis_zebra.c:1.19->1.20 --------------------- PatchSet 1515 Date: 2006/01/17 17:40:45 Author: paul Branch: HEAD Tag: (none) Log: [lib/md5] md5_loop should take void pointer for more useful caller warnings. 2006-01-17 Paul Jakma * md5.{c,h}: (md5_loop) Is better off taking a void * and doing cast to byte wise type internally, avoids needs for casts in users. Members: lib/ChangeLog:1.231->1.232 lib/md5.c:1.4->1.5 lib/md5.h:1.2->1.3 --------------------- PatchSet 1516 Date: 2006/01/17 17:42:03 Author: paul Branch: HEAD Tag: (none) Log: [lib/vty] Add 'no terminal monitor' alias 2006-01-17 Paul Jakma * vty.c: (no_terminal_monitor_cmd) New ALIAS for terminal_no_monitor, in the more normal negating format, to be kind to my fingers. (vty_init) install new ALIAS. Members: lib/ChangeLog:1.232->1.233 lib/vty.c:1.48->1.49 --------------------- PatchSet 1517 Date: 2006/01/17 17:43:18 Author: paul Branch: HEAD Tag: (none) Log: [lib/zclient] Export zclient_create_header 2006-01-17 Paul Jakma * zclient.{c,h}: (zclient_create_header) export this, seems others could use it (in lieu of more complete zserv helpers). Members: lib/ChangeLog:1.233->1.234 lib/zclient.c:1.20->1.21 lib/zclient.h:1.7->1.8 --------------------- PatchSet 1518 Date: 2006/01/17 17:49:53 Author: paul Branch: HEAD Tag: (none) Log: [ospfd/zserv] adjust to new format 2006-01-17 Paul Jakma * ospf_packet.c: (ospf_verify_header) print out the types involved if there's a mismatch. * ospf_zebra.c: (ospf_zebra_add) Adjust to new zserv format. Members: ospfd/ChangeLog:1.165->1.166 ospfd/ospf_packet.c:1.84->1.85 ospfd/ospf_zebra.c:1.37->1.38 --------------------- PatchSet 1519 Date: 2006/01/17 17:56:18 Author: paul Branch: HEAD Tag: (none) Log: [zebra] Include metric on connected routes. 2006-01-17 Gunnar Stigen * connected.c: (connected_up_ipv{4,6}) Include interface metric on connected routes. Members: zebra/ChangeLog:1.115->1.116 zebra/connected.c:1.20->1.21 --------------------- PatchSet 1520 Date: 2006/01/17 17:59:11 Author: paul Branch: HEAD Tag: (none) Log: [zebra] Defensive if_getaddrs bug fix. 2006-01-17 Gunnar Stigen * if_ioctl.c: (if_getaddrs) Be defensive about assuming that struct ifaddrs will have ifa_addr filled in. Members: zebra/ChangeLog:1.116->1.117 zebra/if_ioctl.c:1.9->1.10 --------------------- PatchSet 1521 Date: 2006/01/17 18:03:04 Author: paul Branch: HEAD Tag: (none) Log: [zebra] Record NEWADDR metric on PF_ROUTE, print CACHEINFO debug on netlink 2006-01-17 Paul Jakma * kernel_socket.c: (ifam_read) Read metric from RTM_NEWADDR. If interface is an alias, pass the alias as a label for connected_add_ipv{4,6}. * rt_netlink.c: (netlink_interface_addr) print out IFA_CACHEINFO info, if present, when debugging kernel messages. Members: zebra/ChangeLog:1.117->1.118 zebra/kernel_socket.c:1.35->1.36 zebra/rt_netlink.c:1.41->1.42 --------------------- PatchSet 1522 Date: 2006/01/17 23:39:04 Author: vincent Branch: HEAD Tag: (none) Log: 2006-01-17 Vincent Jardin * md5.c: Don't forget to keep const. * regex.c: Cleanup code and remove warnings. Members: lib/ChangeLog:1.234->1.235 lib/md5.c:1.5->1.6 lib/regex.c:1.3->1.4 --------------------- PatchSet 1523 Date: 2006/01/18 14:52:52 Author: paul Branch: HEAD Tag: (none) Log: 2006-01-18 Gunnar Stigen * zebra_rib.c: Take interface metric into account. Members: zebra/ChangeLog:1.118->1.119 zebra/zebra_rib.c:1.25->1.26 --------------------- PatchSet 1524 Date: 2006/01/18 15:07:38 Author: paul Branch: HEAD Tag: (none) Log: [ospfd] Add support for oversized LSAs. 2006-01-18 Juergen Kammer * ospf_lsa.c: (ospf_router_lsa_new) dont take reference to the stream data until it is constructed, data reference is volatile due to the potential resize in link_info_set 2006-01-18 Paul Jakma * ospf_lsa.c: (link_info_set) Resize the stream if required and possible. Return number of links added. (lsa_link_*_set) use return value from previous. * ospf_lsa.h: Add OSPF_ROUTER_LSA_LINK_SIZE define. Members: ospfd/ChangeLog:1.166->1.167 ospfd/ospf_lsa.c:1.40->1.41 ospfd/ospf_lsa.h:1.13->1.14 --------------------- PatchSet 1525 Date: 2006/01/19 20:16:55 Author: paul Branch: HEAD Tag: (none) Log: [compiler] miscellaneous trivial compiler warning fixes 2006-01-19 Paul Jakma * (general) various miscellaneous compiler warning fixes. Remove redundant break statements from switch clauses which return. return from main, not exit, cause it annoys SOS. Remove stray semi-colons which cause empty-statement warnings. * zebra/main.c: (sighup) remove private declaration of external function. Members: bgpd/ChangeLog:1.81->1.82 bgpd/bgp_aspath.c:1.10->1.11 bgpd/bgp_attr.c:1.13->1.14 bgpd/bgp_clist.c:1.6->1.7 bgpd/bgp_community.c:1.4->1.5 bgpd/bgp_ecommunity.c:1.5->1.6 bgpd/bgp_filter.c:1.6->1.7 bgpd/bgp_main.c:1.17->1.18 bgpd/bgp_packet.c:1.22->1.23 bgpd/bgp_route.c:1.37->1.38 bgpd/bgp_routemap.c:INITIAL->1.20 bgpd/bgp_vty.c:1.28->1.29 bgpd/bgpd.c:1.28->1.29 ospfd/ChangeLog:1.167->1.168 ospfd/ospf_dump.c:1.24->1.25 ospfd/ospf_lsa.c:1.41->1.42 ospfd/ospf_main.c:1.25->1.26 ospfd/ospf_routemap.c:1.5->1.6 ospfd/ospf_vty.c:1.49->1.50 ripd/ChangeLog:1.55->1.56 ripd/rip_main.c:1.17->1.18 ripngd/ChangeLog:1.27->1.28 ripngd/ripng_main.c:1.16->1.17 ripngd/ripng_routemap.c:1.5->1.6 zebra/ChangeLog:1.119->1.120 zebra/main.c:1.23->1.24 zebra/zebra_rib.c:1.26->1.27 zebra/zserv.c:1.37->1.38 --------------------- PatchSet 1526 Date: 2006/01/19 20:22:16 Author: paul Branch: HEAD Tag: (none) Log: [lib/stream] small compile fix, use uint64_t, not u_int64_t. 2006-01-19 Paul Jakma * stream.c: (stream_getq_from) should use POSIX uint64_t not u_int64_t. Latter is neither a traditional BSD type, nor a POSIX type. Members: lib/ChangeLog:1.235->1.236 lib/stream.c:1.11->1.12 --------------------- PatchSet 1527 Date: 2006/01/19 20:26:17 Author: paul Branch: HEAD Tag: (none) Log: [version] bump configure.ac version number to 0.99.3 2006-01-19 Paul Jakma * configure.ac: Bump to 0.99.3 * doc/quagga.info: update auto-built file. Members: ChangeLog:1.139->1.140 configure.ac:1.116->1.117 doc/ChangeLog:1.53->1.54 doc/quagga.info:1.17->1.18 --------------------- PatchSet 1528 Date: 2006/01/19 20:33:47 Author: paul Branch: HEAD Tag: (none) Log: [cvs] update cvsignore file. Members: tests/.cvsignore:1.5->1.6 --------------------- PatchSet 1529 Date: 2006/01/25 04:31:40 Author: paul Branch: HEAD Tag: (none) Log: [zebra/solaris] Interface state fixups for Solaris. 2006-01-25 Paul Jakma * (general) More solaris PF_ROUTE hacks. The IFF_UP mangling for solaris was incomplete on the PF_ROUTE side. fix it. This changeset generally uglifies things. For some future work I'd like to see the state changes seperated out from the details of the code. Differences between systems might then be slightly easier to implement without convoluted hacks. Changes should be specific to Solaris mostly, however also tested on FreeBSD 6. * if_ioctl_solaris.c: (interface_list_ioctl) ignore ~IFF_UP interfaces, we'll hear about them when/if interface goes up through NEWADDR. Update flags explicitely at end of it to kick mangling. * ioctl_solaris.c: (if_mangle_up) removed to interface.c, in kind. (lifreq_set_name) more convenient to take the string, than the ifp. (if_get_flags_direct) new convenience function, returns the actual flags. Used during bootstrap in if_ioctl_solaris.c to peek at flags of logical interfaces to see whether or not to ignore them. (if_get_flags) ENXIO means it's gone, poke out IFF_UP and kick flags update. (if_{un,}set_flags) flags argument should be 64bit. * ioctl.{c,h}: flags argument should be 64bit. * interface.h: Add a 'primary_state' flag to struct zebra_if on SUNOS_5. Export if_flags_update. * interface.c: (if_flags_mangle) moved over in kind from ioctl_solaris.c. Nasty kludge to try get IFF_UP right, as much as is possible. Also keep track of the actual IFF_UP value for the primary interface, so we can know when the ifp must be deleted. (if_flags_update) Take a new interface flags value, apply it to the interface, and take whatever actions are required due to flag transitions. (if_refresh) flag state change logic is moved out to previous. Just call if_get_flags, which will end up using previous to effect the update of flags. (if_flag_dump_vty) IFF_IPV{4,6} aren't interesting, VIRTUAL and NOXMIT are though. * kernel_socket.c: (ifm_read) Down->Down transitions shouldn't create ifp, for non-IFANNOUNCE systems. Use if_flags_update to update flags. flag transition logic is now handled automatically through if_flags_update. (ifam_read) Better to call if_refresh *after* adding connected addresses, as connected count affects IFF_UP on IFF_UP-mangled systems. On Solaris, Up->Down due to DELADDR means we need to delete the ifp - the IFINFO might already have been and gone. * rt.h: include other dependent headers. Members: zebra/ChangeLog:1.120->1.121 zebra/if_ioctl_solaris.c:1.11->1.12 zebra/interface.c:1.30->1.31 zebra/interface.h:1.8->1.9 zebra/ioctl.c:1.9->1.10 zebra/ioctl.h:1.4->1.5 zebra/ioctl_solaris.c:1.7->1.8 zebra/kernel_socket.c:1.36->1.37 zebra/rt.h:1.3->1.4 --------------------- PatchSet 1530 Date: 2006/01/25 06:31:04 Author: paul Branch: HEAD Tag: quagga_0_99_3_release Log: [zebra] Fix incorrect changes made in RIB metric selection patch 2006-01-25 Gunnar Stigen * zebra_rib.c: (rib_process) Application of Gunnar's earlier metric selection RIB change included incorrect tidy-ups made by commiter. Fix. (NB: any errors here are again due to paul). Members: zebra/ChangeLog:1.121->1.122 zebra/zebra_rib.c:1.27->1.28