summaryrefslogtreecommitdiff
path: root/ChangeLog
AgeCommit message (Collapse)Author
2007-10-14[bgpd] Merge AS4 supportPaul Jakma
2007-10-14 Paul Jakma <paul.jakma@sun.com> * NEWS: Note that MRT dumps are now version 2 * (general) Merge in Juergen Kammer's AS4 patch. 2007-09-27 Paul Jakma <paul.jakma@sun.com> * bgp_aspath.c: (assegment_normalise) remove duplicates from from sets. (aspath_reconcile_as4) disregard a broken part of the RFC around error handling in path reconciliation. * aspath_test.c: Test dupe-weeding from sets. Test that reconciliation merges AS_PATH and AS4_PATH where former is shorter than latter. 2007-09-26 Paul Jakma <paul.jakma@sun.com> * aspath_test.c: Test AS4_PATH reconcilation where length of AS_PATH and AS4_PATH is same. 2007-09-25 Paul Jakma <paul.jakma@sun.com> * bgp_open.c: (peek_for_as4_capability) Fix to work. * bgp_packet.c: (bgp_open_receive) Fix sanity check of as4. * tests/bgp_capability_test.c: (general) Extend tests to validate peek_for_as4_capability. Add test of full OPEN Option block, with multiple capabilities, both as a series of Option, and a single option. Add some crap to beginning of stream, to prevent code depending on getp == 0. 2007-09-18 Paul Jakma <paul.jakma@sun.com> * bgp_open.c: (bgp_capability_as4) debug printf inline with others. (peek_for_as4_capability) There's no need to signal failure, as failure is better dealt with through full capability parser - just return the AS4, simpler. * bgp_packet.c: (bgp_open_receive) Update to match peek_for_as4_capability change. Allow use of BGP_AS_TRANS by 2b speakers. Use NOTIFY_OPEN_ERR rather than CEASE for OPEN parsing errors. (bgp_capability_msg_parse) missing argument to debug print (bgp_capability_receive) missing return values. * tests/bgp_capability_test.c: (parse_test) update for changes to peek_for_as4_capability 2007-07-25 Paul Jakma <paul.jakma@sun.com> * Remove 2-byte size macros, just make existing macros take argument to indicate which size to use. Adjust all users - typically they want '1'. * bgp_aspath.c: (aspath_has_as4) New, return 1 if there are any as4's in a path. (aspath_put) Return the number of bytes actually written, to fix the bug Juergen noted: Splitting of segments will change the number of bytes written from that already written to the AS_PATH header. (aspath_snmp_pathseg) Pass 2-byte flag to aspath_put. SNMP is still defined as 2b. (aspath_aggregate) fix latent bug. (aspath_reconcile_as4) AS_PATH+NEW_AS_PATH reconciliation function. (aspath_key_make) Hash the AS_PATH string, rather than just taking the addition of assegment ASes as the hash value, hopefully sligthly more collision resistant. (bgp_attr_munge_as4_attrs) Collide the NEW_ attributes together with the OLD 2-byte forms, code Juergen had in bgp_attr_parse but re-organised a bit. (bgp_attr_parse) Bunch of code from Juergen moves to previous function. (bgp_packet_attribute) Compact significantly by just /always/ using extended-length attr header. Fix bug Juergen noted, by using aspath_put's (new) returned size value for the attr header rather than the (guesstimate) of aspath_size() - the two could differ when aspath_put had to split large segments, unlikely this bug was ever hit in the 'wild'. (bgp_dump_routes_attr) Always use extended-len and use aspath_put return for header length. Output 4b ASN for AS_PATH and AGGREGATOR. * bgp_ecommunity.c: (ecommunity_{hash_make,cmp}) fix hash callback declarations to match prototypes. (ecommunity_gettoken) Updated for ECOMMUNITY_ENCODE_AS4, complete rewrite of Juergen's changes (no asdot support) * bgp_open.c: (bgp_capability_as4) New, does what it says on the tin. (peek_for_as4_capability) Rewritten to use streams and bgp_capability_as4. * bgp_packet.c: (bgp_open_send) minor edit checked (in the abstract at least) with Juergen. Changes are to be more accepting, e.g, allow AS_TRANS on a 2-byte session. * (general) Update all commands to use CMD_AS_RANGE. * bgp_vty.c: (bgp_clear) Fix return vals to use CMD_.. Remove stuff replicated by VTY_GET_LONG (bgp_clear_vty) Return bgp_clear directly to vty. * tests/aspath_test.c: Exercise 32bit parsing. Test reconcile function. * tests/ecommunity_test.c: New, test AS4 ecommunity changes, positive test only at this time, error cases not tested yet. 2007-07-25 Juergen Kammer <j.kammer@eurodata.de> * (general) AS4 support. * bgpd.h: as_t changes to 4-bytes. * bgp_aspath.h: Add BGP_AS4_MAX and BGP_AS_TRANS defines. * bgp_aspath.c: AS_VALUE_SIZE becomes 4-byte, AS16_VALUE_SIZE added for 2-byte. Add AS16 versions of length calc macros. (aspath_count_numas) New, count number of ASes. (aspath_has_as4) New, return 1 if there are any as4's in a path. (assegments_parse) Interpret assegment as 4 or 2 byte, according to how the caller instructs us, with a new argument. (aspath_parse) Add use32bit argument to pass to assegments_parse. Adjust all its callers to pass 1, unless otherwise noted. (assegment_data_put) Adjust to be able to write 2 or 4 byte AS, according to new use32bit argument. (aspath_put) Adjust to write 2 or 4. (aspath_gettoken) Use a long for passed in asno. * bgp_attr.c: (attr_str) Add BGP_ATTR_AS4_PATH and BGP_ATTR_AS4_AGGREGATOR. (bgp_attr_aspath) Call aspath_parse with right 2/4 arg, as determined by received-capability flag. (bgp_attr_aspath_check) New, code previously in attr_aspath but moved to new func so it can be run after NEW_AS_PATH reconciliation. (bgp_attr_as4_path) New, handle NEW_AS_PATH. (bgp_attr_aggregator) Adjust to cope with 2/4 byte ASes. (bgp_attr_as4_aggregator) New, read NEW_AGGREGATOR. (bgp_attr_parse) Add handoffs to previous parsers for the two new AS4 NEW_ attributes. Various checks added for NEW/OLD reconciliation. (bgp_packet_attribute) Support 2/4 for AS_PATH and AGGREGATOR, detect when NEW_ attrs need to be sent. * bgp_debug.{c,h}: Add 'debug bgp as4'. * bgp_dump.c: MRTv2 support, unconditionally enabled, which supports AS4. Based on patches from Erik (RIPE?). * bgp_ecommunity.c: (ecommunity_ecom2str) ECOMMUNITY_ENCODE_AS4 support. * bgp_open.c: (peek_for_as4_capability) New, peek for AS4 capability prior to full capability parsing, so we know which ASN to use for struct peer lookup. (bgp_open_capability) Always send AS4 capability. * bgp_packet.c: (bgp_open_send) AS4 handling for AS field (bgp_open_receive) Peek for AS4 capability first, and figure out which AS to believe. * bgp_vty.c: (bgp_show_peer) Print AS4 cap * tests/aspath_test.c: Support asn32 changes, call aspath_parse with 16 bit. * vtysh/extract.pl: AS4 compatibility for router bgp ASNUMBER * vtysh/extract.pl.in: AS4 compatibility for router bgp ASNUMBER * vtysh/vtysh.c: AS4 compatibility for router bgp ASNUMBER
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-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-07-272007-07-27 Paul Jakma <paul.jakma@sun.com>Paul Jakma
* configure.ac: Bump version to 0.99.8
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[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-05-10[autoconf] GNU_SOURCE can be defined twice, through AC_FUNC_STRNLENPaul Jakma
2007-05-10 Paul Jakma <paul.jakma@sun.com> * configure.ac: Use AC_GNU_SOURCE to define _GNU_SOURCE, rather than having lib/zebra.h do it. AC_FUNC_STRNLEN has side-effects with latest autoconf, use AC_CHECK_FUNC on strnlen instead. * lib/zebra.h: Don't try define _GNU_SOURCE, autoconf should do it.
2007-05-10[autoconf] add back check for inet_atonPaul Jakma
2007-05-10 Paul Jakma <paul.jakma@sun.com> * configure.ac: Add back check for inet_aton, which got dropped somehow in previous jumbo patch.
2007-05-10[autoconf] bugs 162,303,178: Fix 'present but can not be compiled' warningsPaul Jakma
2007-05-09 Paul Jakma <paul.jakma@sun.com> * configure.ac: sys/conf.h depends on sys/param.h, at least on FBSD 6.2. (bug #363) Should check for in_pktinfo for IRDP 2006-05-27 Paul Jakma <paul.jakma@sun.com> * configure.ac: General cleanup of header and type checks, introducing an internal define, QUAGGA_INCLUDES, to build up a list of stuff to include so as to avoid 'present but cant be compiled' warnings. Misc additional checks of things missing according to autoscan. Add LIBM, for bgpd's use of libm, so as to avoid burdening LIBS, and all the binaries, with libm linkage. Remove the bad practice of using m4 changequote(), just quote the []'s in the case statements properly. This should fix bugs 162, 303 and 178. * */*.{c,h}: Update all HAVE_* to the standard autoconf namespaced HAVE_* defines. I.e. HAVE_SA_LEN -> HAVE_STRUCT_SOCKADDR_SA_LEN, * bgpd/Makefile.am: Add LIBM to bgpd's LDADD, for pow().
2007-04-30[build] Improve portability by invoking gcc with -std=gnu99 instead of -std=c99Andrew J. Schorr
2007-04-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * configure.ac: Change gcc CFLAGS from '-std=c99' to '-std=gnu99' to improve portability.
2007-04-29[0.99] Version bump to 0.99.7Paul Jakma
2007-04-29 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.7
2007-04-16Use 'path (category)' form.David Young
2007-04-16Note my change to zebra/connected.c.David Young
2007-02-06use generic sed test so this works on autoconf 2.59Greg Troxel
2007-02-06autoreconf -iGreg Troxel
2007-02-03add AC_PROC_SEDGreg Troxel
2007-02-02use bootstrap.shGreg Troxel
2007-02-02Provide 'standard interface', even if it just invokes autoreconf.Greg Troxel
2007-02-02* README.NetBSD: use update-autotools instead of autoreconfGreg Troxel
* update-autotools: print out tool name before invoking to aid debugging
2006-12-08[0.99] Bump version to 0.99.6Paul Jakma
2006-12-08 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.6
2006-10-15[daemon startup] Add --dry-run/-C argument to daemons, to check config file ↵Paul Jakma
syntax 2006-10-04 Oliver Hookins <ohookins@gmail.com> * bgpd/bgp_main.c: Add configuration check option, with '-C' rather than '-c' for consistency between daemons. * isisd/isis_main.c: ditto * ospf6d/ospf6_main.c: ditto * ospfd/ospf_main.c: ditto * ripngd/ripng_main.c: ditto * vtysh/vtysh_main.c: ditto * ripd/rip_main.c: Change the config check option to '-C' and tidy up the code. * zebra/main.c: ditto 2006-10-04 Stergiakis Alexandros <astergiakis@antcor.com> * ripd/rip_main.c: This trivial patch introduces a new command-line option '-c', which instructs zebra/ripd to check its configuration file for validity, print any error message, and then exit. This is useful when the configuration file is edited by hand or otherwise, and you simply want to validate it without any other effect. * zebra/main.c: ditto
2006-08-27[0.99] version bump to 0.99.5Paul Jakma
2006-08-27 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.5
2006-06-15[redhat quagga.spec] Detect fedora release automaticallyAndrew J. Schorr
2006-06-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu> * redhat/quagga.spec.in: Get default distro automatically by using rpm to query the fedora-release version. And fix a typo (should be default_dist, not dist_default).
2006-05-28[lib] Add support for Sun libc printstack to zlog_backtrace_sigsafePaul Jakma
2006-05-28 Paul Jakma <paul.jakma@sun.com> * configure.ac: Check for Sun libc printstack(), add a general HAVE_STACK_TRACE define for lib/log.c, if any supported stack symbol dumping function is found (glibc backtrace/sun libc printstack). * log.c: (general) Add support for Sun libc printstack(). (hex_append) make the cpp conditional on general HAVE_STACK_TRACE define. (zlog_backtrace_sigsafe) Ditto. Add printstack() version of the the DUMP macro in this function.
2006-05-28[build] Update SOS CFLAGS and add check for GNU Make in configure.acPaul Jakma
2006-05-28 Paul Jakma <paul.jakma@sun.com> * configure.ac: Update SOS CFLAGS, Xt shouldn't be used and enable debug options. Add a check for GNU Make and warn the user if it does not appear to be the make used.
2006-05-10[0.99] Version bump to 0.99.4Paul Jakma
2006-05-10 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.4
2006-03-30[TODO] Note MED functionality we should implementPaul Jakma
2006-03-30 Paul Jakma <paul.jakma@sun.com> * TODO: Add reminder for useful MED functionality we should implement.
2006-03-30[lib/memory] Add mallinfo supportPaul Jakma
2006-02-15 Paul Jakma <paul.jakma@sun.com> * configure.ac: Check for mallinfo, being careful to link test so we can detect things like umem being used (which doesn't provide a mallinfo). * lib/memory.c: (mtype_memstr) new helper function to return human friendly string for a byte count. (mtype_stats_alloc) new function, for users to retrieve number of objects allocated. (show_memory_mallinfo) New function, show mallinfo statistics if available. (show_memory_all_cmd) Call show_memory_mallinfo, if mallinfo is available. * lib/memory.h: Export mtype_memstr and mtype_stats_alloc. Provide a define for a reasonable buffer size for mtype_memstr.
2006-01-31[build system] cleanup --enable-snmp by removing ucd-snmp cruftpaul
2006-01-31 Paul Jakma <paul.jakma@sun.com> * configure.ac: Cleanup the hideous {net,ucd}-snmp section by removing ucd-snmp. Hence fixing detection where net-snmp is installed in /usr/local (Boris Kovalenko reported the problem).
2006-01-19[version] bump configure.ac version number to 0.99.3paul
2006-01-19 Paul Jakma <paul.jakma@sun.com> * configure.ac: Bump to 0.99.3 * doc/quagga.info: update auto-built file.
2005-11-26[build] Set default CFLAGS for SunPro, rationalise CFLAGS defaults.paul
2005-11-26 Paul Jakma <paul.jakma@sun.com> * configure.ac: Collect together CFLAGS based on compiler detected a bit. Recognise and set default CFLAGS for SunPro / SOS10.
2005-11-14[bug #231] check and include stdint.h, also add std=c99 to gcc CFLAGSpaul
2005-11-14 Paul Jakma <paul.jakma@sun.com> * 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.
2005-11-112005-11-11 Paul Jakma <paul.jakma@sun.com>paul
* NEWS: Update. * configure.ac: Bump to 0.99.2
2005-11-102005-11-10 Paul Jakma <paul.jakma@sun.com>paul
* HACKING: Add recommendation to provide a single Subject style description to the commit message. Add some recommendations for ChangeLog.
2005-09-292005-09-29 Paul Jakma <paul.jakma@sun.com>paul
* configure.ac: Add the test for Solaris least-privileges. Set defines for whether capabilities are supported and whether of the linux or solaris variety. Add missing-prototypes, missing-declarations, char-subscripts and cast-qual warnings to default cflags, cause Hasso enjoys warnings, and we really should clean the remaining ones up. (ie isisd..). * (*/*main.c) Update the zebra_capabilities_t arrays in the various daemons to match the changes made in lib/privs.h. * zebra.h: Solaris capabilities requires priv.h to be included. * privs.{c,h}: Add support for Solaris Least-Privileges. privs.h: Reduce some of the abstract capabilities, which do not have rough equivalents on both systems. Rename the net related caps to _NET, as they should have been in first place. (zprivs_terminate) should take the zebra_privs_t as argument so that it can update change pointer. Add an additional privilege state, ZPRIVS_UNKNOWN. * privs.c: (various capability functions) Add Solaris privileges variants. (zprivs_state) Use privs.c specific generic types to represent various capability/privilege related types, so that each can be typedef'd as appropriate on each platform. (zprivs_null_state) static added, to hold the state the null method should report (should be raised by default, and LOWERED if zprivs_terminate has been called) (zprivs_state_null) Report back the zprivs_null_state. (cap_map) Make it able to map abstract capability to multiple system capabilities. (zcaps2sys) Map to abstract capabilities to multiple system privileges/capabilities. (zprivs_init) move capability related init to seperate function, zprivs_caps_init. (zprivs_terminate) ditto, moved to zprivs_caps_terminate. Set the change_state callback to the NULL state, so the user can continue to run and use the callbacks.
2005-09-19 * configure.ac: Test existance of strndup.hasso
* lib/str.[ch]: Add strndup() from glibc.
2005-08-252005-08-25 Paul Jakma <paul@jakma.org>paul
* configure.ac: Add -fno-omit-frame-pointer after -Os in default cflags, just to be sure. Fedora's readline library does not itself link to termcap, hence we must pass the result of termcap tests in via OTHER-LIBRARIES argument, otherwise the test of main in readline will fail due to missing termcap systems. On systems like Debian, -ltermcap is not needed for the readline test, because libreadline already links to it.
2005-08-25 * configure.ac, vtysh/Makefile.am: Only vtysh needs to be linkedhasso
against libreadline and friends.
2005-08-132005-08-13 Paul Jakma <paul@jakma.org>paul
* Makefile.am: (EXTRA_DIST) Add the trailing slash back in which greg left out - tools bits weren't being included in dist, which broke rpm builds :).
2005-08-10add INSTALL.quagga.txt to the distribution, so that people who applygdt
patches and lose because of old autoconf/automake versions have the opportunity to find tout what to do.
2005-06-30 * configure.ac: Actually test whether libc has IPv6 support.hasso
[backport candidate]
2005-06-282005-06-28 Paul Jakma <paul.jakma@sun.com>paul
* INSTALL.quagga.txt: GNU make is required now, because of manual automatic rules in solaris/Makefile.am. (If someone knows how to do these in a better way..). GNU AWK is required for CVS checkout builds.
2005-06-022005-06-01 Paul Jakma <paul.jakma@sun.com>paul
* NEWS: bgpd work queues and ripd auth-mode change
2005-05-13- revert the commenting of touch doc/quagga.info, wont work becausepaul
defines.texi is autogenerated every configure time so it will always be newer than quagga.info, and hence require quagga.info to be built. drat.
2005-05-132005-05-13 Paul Jakma <paul.jakma@sun.com>paul
* configure.ac: Comment out the touch doc/quagga.info hack. I'm hoping it's not needed anymore, cause it breaks out of tree builds which i've become fond of.. Plus I think we sorted out most of the original problems (updated texinfo.tex, moved the version info to an autogenerated by automake version.texi). Dist users most definitely wont be affected.
2005-05-072005-05-07 Yar Tikhiy <yar@comp.chem.msu.su>paul
* configure.ac: Check for OSes which support passing ifindex in struct ip_mreq. * lib/sockopt.c: Add support for BSD style ifindex in ip_mreq. * ospfd/ospf_network.c: Log ifindex on multicast membership leave/join events.
2005-04-292005-04-29 Paul Jakma <paul.jakma@sun.com>paul
* NEWS: Added some more 0.99 news. * configure.ac: bump to 0.99.1 (0.99.0 was never released except via CVS snapshots)
2005-04-282005-04-28 Paul Jakma <paul.jakma@sun.com>paul
* NEWS: Added some 0.99 news
2005-04-252005-04-25 Paul Jakma <paul.jakma@sun.com>paul
* HACKING: Add some notes about build system changes, to document common oversights (common for me anyway). Seperate sections with two newlines, easier to read.
2005-04-162005-04-16 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* configure.ac: Added AC_ARG_ENABLE(time-check). By default, warning messages will now be printed for threads or commands that take longer than 5 seconds, but this configure argument can be used to disable the checks or change the threshold. * thread.h (thread_consumed_time): Declare new function to calculate elapsed microseconds. * thread.c (thread_consumed_time): Must be global not static so we can call it from lib/vty.c:vty_command. (thread_should_yield): Surround with `#if 0' to make clear that this function is not currently being used anywhere. (thread_call): If CONSUMED_TIME_CHECK is defined, print a CPU HOG warning message if the thread takes more than CONSUMED_TIME_CHECK microseconds. * vty.c (vty_command): If CONSUMED_TIME_CHECK is defined, print a CPU HOG warning message if the command takes more than CONSUMED_TIME_CHECK microseconds.