summaryrefslogtreecommitdiff
path: root/bgpd
AgeCommit message (Collapse)Author
2004-12-072004-12-07 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* bgp_main.c: (main) The 2nd argument to openzlog has been removed. * isis_main.c: (main) The 2nd argument to openzlog has been removed. * ospf6_main.c: (main) The 2nd argument to openzlog has been removed. Note that stdout logging will no longer be enabled by default when not running as a daemon. * ospf_main.c: (main) The 2nd argument to openzlog has been removed. * rip_main.c: (main) The 2nd argument to openzlog has been removed. * ripng_main.c: (main) The 2nd argument to openzlog has been removed. * main.c: (main) The 2nd argument to openzlog has been removed. So stdout logging will no longer be enabled by default. * irdp_main.c: (irdp_finish) Reduce severity of shutdown message from LOG_WARNING to LOG_INFO. * vtysh.c: Make several functions static instead of global. Added several commands to support destination-specific logging levels. (vtysh_completion) This function is unused, so comment it out. * basic.texi: Document new logging features. Separate basic config commands from basic VTY commands. * log.h: Replace struct zlog flags and maskpri fields with maxlvl array to support individual logging levels for each destination. Remove the 2nd argument to openzlog since the default logging config should be standardized inside the library. Replaced the zlog_set_flag and zlog_reset_flag functions with zlog_set_level. And zlog_set_file now requires an additional log_level argument. Declare zlog_proto_names for use inside command.c in the "show logging" command. Added defines useful for command construction. * log.c: (vzlog) Decide where to send the message based on the individual logging levels configured for each destination. Remove support for ZLOG_STDERR since it was never actually used. Support record-priority for terminal monitors. (zlog_signal,zlog_backtrace_sigsafe) Support destination-specific logging levels. Remove stderr support (was never used). Added support for terminal monitor logging. (_zlog_assert_failed) Increase message severity to LOG_EMERG. (openzlog) Remove 2nd argument since default config should be standardized in library. By default, terminal monitoring is set to debug, and all other logging is disabled. (zlog_set_flag,zlog_reset_flag) Removed. (zlog_set_level) New function to replace zlog_set_flag and zlog_reset_flag. Supports destination-specific logging levels. (zlog_set_file,zlog_reset_file) Support file-specific logging level. (zlog_rotate) Log an error message if fopen fails, and support new file-specific logging level. * command.h: Change DEFUN_CMD_FUNC_DECL and DEFUN_CMD_FUNC_TEXT so that command functions will be static instead of global. Remove declarations for config_exit and config_help. Define new macros DEFUNSH_ATTR, DEFUNSH_HIDDEN, and DEFUNSH_DEPRECATED so we can have deprecated commands in vtysh. Similarly, for completeness, define macros ALIAS_SH, ALIAS_SH_HIDDEN, and ALIAS_SH_DEPRECATED. Also, fix bug in ALIAS_ATTR macro (didn't matter because it was never used). * command.c: Make many functions static instead of global. (facility_name,facility_match,level_match) New functions to support enhanced destination-specific logging levels. (config_write_host) Support new destination-specific logging levels. (config_logmsg) Added new "logmsg" command to help test logging system. (show_logging) Added "show logging" command to show the current configuration of the logging system. (config_log_stdout_level) Support explicit stdout logging level. (no_config_log_stdout) Now takes optional LEVEL arg. (config_log_monitor,config_log_monitor_level,no_config_log_monitor) New commands creating new "log monitor" commands to set terminal monitoring log level. (config_log_file_level) Support explicit file logging level. (config_log_syslog_level) Support explicit syslog logging level. (config_log_facility,no_config_log_facility) Implement new "log facility" command. (cmd_init) Add hooks for new commands: "show logging", "logmsg", "log stdout <level>", "log monitor", "log monitor <level>", "no log monitor", "log file <filename> <level>", "no log file <filename> <level>", "log syslog <level>", "log facility", and "no log facility". * vty.h: Added a "level" argument to vty_log so it can support "log record-priority". Declare new function vty_log_fixed for use in signal handlers. * vty.c: (vty_log,vty_log_out) Added a "level" argument to support "log record-priority" for vty terminal monitors. (vty_down_level) Use config_exit_cmd.func instead of calling config_exit directly (since command functions will now be static instead of global). (vty_log_fixed) New function to send terminal monitor messages from inside a signal handler.
2004-12-032004-12-03 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* bgp_main.c: (sigint) Use zlog_notice for termination message. (main) Use zlog_notice for startup announcement. * isis_main.c: (sigint,sigterm) Use zlog_notice for termination message. (terminate) This function should be static, not global. (main) Use zlog_notice for startup announcement, and remove ifdef ZEBRA_VERSION. * version.h.in: Remove declaration for pid_output_lock, this function is now static, not global. * pid_output.c: (pid_output_lock) This function should be static, not global. And remove "old umask" error message, since it was really an unimportant debug message, not an error. (pid_output) Need to declare static function pid_output_lock. * ospf6_main.c: (sigint,sigterm) Use zlog_notice for termination message. (main) Remove commented-out call to pid_output_lock (which should never be called other than from inside pid_output). And use zlog_notice to print the startup message, which now includes the vty port. * ospf_main.c: (sigint) Use zlog_notice for termination message. (main) Issue a startup announcement using zlog_notice. * rip_main.c: (sigint) Use zlog_notice for termination message. (main) Add a startup announcement using zlog_notice. * ripng_main.c: (sighup) Remove spurious terminating message. (sigint) Use zlog_notice for termination message. (main) Issue a startup announcement using zlog_notice. * main.c: (sigint) Use zlog_notice for termination message. (main) Add a startup announcement using zlog_notice.
2004-11-25Make group to run daemon as configurable. Fixes #2 from Bugzilla #64.hasso
2004-11-202004-11-19 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* global: Replace strerror with safe_strerror. And vtysh/vtysh.c needs to include "log.h" to pick up the declaration.
2004-11-092004-11-09 Paul Jakma <paul@dishone.st>paul
* bgp_nexthop.c: collapse bgp_connected_ipvX, bgp_nexthop_cache_ipvX and cache{1,2}.. into arrays of tables and hence collapse bgp_scan_ipv{4,6} into a single bgp_scan function. Tested, though a long time ago (and this change was hand-merged).
2004-11-052004-11-04 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* vty.h: Remove fields in struct vty that were related to VTY_CONTINUE capabilities (that were used only in bgpd/bgp_route.c and are now removed). Also remove some other fields that were not being used at all. * vty.c: (vty_execute) Do not test for obsolete status values VTY_START and VTY_CONTINUE. (vty_read) Remove calls to vty->output_func since that was part of the VTY_CONTINUE infrastructure that has been removed. (vty_flush) Remove code to support VTY_START and VTY_CONTINUE. (vty_close) Remove code to cancel vty->t_output thread, since that thread was never actually used. * bgp_route.c: Remove all code related to VTY_CONTINUE; this feature is deprecated because the output did not represent a single point in time. All output needs to be generated inline and buffered by the library code. (route_vty_out,route_vty_out_tag,damp_route_vty_out, flap_route_vty_out) Remove code to count number of lines of output, since this was only useful for VTY_CONTINUE behavior. (bgp_show_callback) Removed. (bgp_show_table) Remove hooks for VTY_CONTINUE callback support. As a result, there's a new output_arg argument to this function. Make function static. (bgp_show) Make function static and add a new output_arg argument. Change all functions that call bgp_show or bgp_show_table to pass the new output_arg argument (that used to be passed inside vty->output_arg). * bgp_mplsvpn.c: Remove declarations of functions defined in bgp_route.c; these declarations belong in bgp_route.h. * bgp_route.h: Declare 3 global functions used in both bgp_route.c and in bgp_mplsvpn.c.
2004-11-02- Add .arch-ids and .arch-inventory to cvsignore, to allow one to use archpaul
with CVS trees.
2004-10-312004-10-31 Paul Jakma <paul@dishone.st>paul
* {bgpd,bgp_attr}.c: size_t printf format should be ld.
2004-10-252004-10-25 Paul Jakma <paul@dishone.st>paul
* Update with fix in debian bug id 222930. * bgp_main.c: Add ZCAP_RAW, needed to bind to interfaces. bgp_network.c: (....) raise/lower privs around call to SO_BINDTODEVICE sockopt.
2004-10-19OK. Here it is - PtP patch from Andrew J. Schorr. No problems with ospfd,hasso
ripd might need some more testing though.
2004-10-13Make dump configuration appear in vtysh.hasso
2004-10-13Ladies and Gentlemens. This file is dead for years, from 1999 to be exact.hasso
2004-10-13Make initializing smux connection configurable - "smux peer OID" commandhasso
initializes connection, and "no smux peer" command terminates it. Fixes bugzilla #47 and #112.
2004-10-132004-10-13 Paul Jakma <paul@dishone.st>paul
* (global) more const'ification and fixups of types to clean up code. * bgp_mplsvpn.{c,h}: (str2tag) fix abuse. Still not perfect, should use something like the VTY_GET_INTEGER macro, but without the vty_out bits.. * bgp_routemap.c: (set_aggregator_as) use VTY_GET_INTEGER_RANGE (no_set_aggregator_as) ditto. * bgpd.c: (peer_uptime) fix unlikely bug, where no buffer is returned, add comments about troublesome return value.
2004-10-03Common router id.hasso
2004-09-26Compiler warnings fixes.hasso
2004-09-23Remove usage of evil list and listnode typedefs.hasso
2004-09-132004-09-13 Jose Luis Rubio <jrubio@dit.upm.es>paul
(at Technical University of Madrid as part of Euro6ix Project) Enhanced Route Server functionality and Route-Maps: * bgpd/bgpd.h: Modified 'struct peer' and 'struct bgp_filter' to support rs-clients. A 'struct bgp_table *rib' has been added to the first (to mantain a separated RIB for each rs-client) and two new route-maps have been added to the last (for import/export policies). Added the following #defines: RMAP_{IN|OUT|IMPORT|EXPORT|MAX}, PEER_RMAP_TYPE_{IMPORT|EXPORT} and BGP_CLEAR_SOFT_RSCLIENT. * bgpd/bgpd.c: Modified the functions that create/delete/etc peers in order to consider the new fields included in 'struct peer' for supporting rs-clients, i.e. the import/export route-maps and the 'struct bgp_table'. * bgpd/bgp_route.{ch}: Modified several functions related with receiving/sending announces in order to support the new Route Server capabilities. Function 'bgp_process' has been reorganized, creating an auxiliar function for best path selection ('bgp_best_selection'). Modified 'bgp_show' and 'bgp_show_route' for displaying information about any RIB (and not only the main bgp RIB). Added commands for displaying information about RS-clients RIBs: 'show bgp rsclient (A.B.C.D|X:X::X:X)', 'show bgp rsclient (A.B.C.D|X:X::X:X) X:X::X:X/M', etc * bgpd/bgp_table.{ch}: The structure 'struct bgp_table' now has two new fields: type (which can take the values BGP_TABLE_{MAIN|RSCLIENT}) and 'void *owner' which points to 'struct bgp' or 'struct peer' which owns the table. When creating a new bgp_table by default 'type=BGP_TABLE_MAIN' is set. * bgpd/bgp_vty.c: The commands 'neighbor ... route-server-client' and 'no neighbor ... route-server-client' now not only set/unset the flag PEER_FLAG_RSERVER_CLIENT, but they create/destroy the 'struct bgp_table' of the peer. Special actions are taken for peer_groups. Command 'neighbor ... route-map WORD (in|out)' now also supports two new kinds of route-map: 'import' and 'export'. Added commands 'clear bgp * rsclient', etc. These commands allow a new kind of soft_reconfig which affects only the RIB of the specified RS-client. Added commands 'show bgp rsclient summary', etc which display a summary of the rs-clients configured for the corresponding address family. * bgpd/bgp_routemap.c: A new match statement is available, 'match peer (A.B.C.D|X:X::X:X)'. This statement can only be used in import/export route-maps, and it matches when the peer who announces (when used in an import route-map) or is going to receive (when used in an export route-map) the route is the same than the one specified in the statement. For peer-groups the statement matches if the specified peer is member of the peer-group. A special version of the command, 'match peer local', matches with routes originated by the Route Server (defined with 'network ...', redistributed routes and default-originate). * lib/routemap.{ch}: Added a new clause 'call NAME' for use in route-maps. It jumps into the specified route-map and when it returns the first route-map ends if the called RM returns DENY_MATCH, or continues in other case.
2004-08-26One warning less while building vtysh_cmd.c. This seems to be dead file.hasso
Maybe remove it at all?
2004-07-23(somewhat unrelated cleanups, but all are very minor)gdt
2004-07-23 Greg Troxel <gdt@poblano.ir.bbn.com> * */Makefile.am: Use ../dir/libfoo.la, rather than "-L../dir -lfoo", to avoid linking against installed libraries from a previous version. * {lib,ospfd,ospfclient}/Makefile.am: explicitly define the shared library version number to be 0.0 * configure.ac: remove spurious , so extract.pl is chmod'd +x. * HACKING: explain shared library versioning rules
2004-07-09cvsignore *.libs in build dirspaul
2004-07-092004-07-09 Paul Jakma <paul@dishone.st>paul
Merge of GNU Zebra cvs2svn changesets r799, r800 and r807. * bgp_dump.c: (bgp_dump_attr) cleanup. return status code. check attributes present before printing. * bgp_dump.c: update bgp_dump_attr prototype. * bgp_packet.c: (bgp_update_receive) init attrstr. check status of bgp_dump_attr. Log end-of-rib UPDATEs.
2004-07-09Update cvsignore's for *.lo and *.la - libtool filespaul
2004-07-092004-07-09 Sowmini Varadhan <sowmini.varadhan@sun.com>paul
* bgp_packet.c: (bgp_collision_detect) Send NOTIFY on new socket if that is connection we're closing. (bgp_read) invalid marker check applies to KEEPALIVE too. * bgp_route.c: Ignore multicast NRLI, dont send NOTIFY.
2004-06-30Add libtool support.gdt
libzebra and libospfapiclient are now built shared, and linked shared with the daemons. This reduces the memory needed when running multiple daemons; each daemon is at least 150k smaller. Static libraries are still built, and libtool should use them on platforms which don't have shared libaries. As with autoconf, the user of a distribution does not need libtool; one just needs that to build from CVS. libospf.a is still a non-shared library, and still installed, not because that makese sense, but because I don't understand why it is the way it is now. Note that the tree was tagged 'libtool-before' just before this commit.
2004-06-20Removing code which looked at current dir for config file before attemptinghasso
to read system one.
2004-06-06CVS ignore Linux NFS silly-delete .nfs* filespaul
2004-06-042004-06-04 Paul Jakma <paul@dishone.st>paul
* type mismatch fixes
2004-05-21Merge graceful restart capability display and some small fixes from Zebrahasso
repository by Rivo Nurges.
2004-05-20Merge bgpd changeset 1185 from Zebra repository by Rivo Nurges.hasso
2004-05-20Merge bgpd changeset 1184 from Zebra repository by Rivo Nurges.hasso
2004-05-20Merge bgpd changeset 1176 from Zebra repository by Rivo Nurges.hasso
2004-05-082004-05-08 Paul Jakma <paul@dishone.st>paul
* bgp_zebra.c: (bgp_interface_address_add) sync to zclient changes (bgp_interface_address_delete) ditto. (bgp_zebra_announce) ditto. (bgp_zebra_withdraw) ditto. * isis_zebra.c: Sync with zclient changes. * zclient.c (zapi_ipv4_route) Follow Sowmini's lead and describe message format. * ospf6_zebra.c: Sync to zclient changes * ospf_zebra.c: Sync with lib/zclient changes * rip_zebra.c: sync with zclient changes. * rip_interface.c: ditto. * ripng_{interface,zebra}.c: sync with zclient changes 2004-05-08 Sowmini Varadhan <sowmini.varadhan@sun.com> * zclient.c: (zapi_ipv4_add) collapsed into zapi_ipv4_route (zapi_ipv4_delete) ditto. (zapi_ipv4_route) add/delete a route by way of cmd arg. (zapi_ipv6_add) collapsed into zapi_ipv6_route. (zapi_ipv6_delete) ditto. (zapi_ipv6_route) add/delete a route by way of cmd arg. (zebra_interface_address_delete_read) collapsed into zebra_interface_address_read. (zebra_interface_address_delete_read) ditto. (zebra_interface_address_read) read address add/delete messages by way of type argument. Describe command message format. (zebra_interface_add_read) Unconditionally read new ifmtu6 field. Describe command message format. (zebra_interface_state_read) Unconditionally read new ifmtu6 field. (zclient_redistribute_set) Collapsed into zclient_redistribute (zclient_redistribute_unset) ditto (zclient_redistribute) set/unset redistribution. (zclient_redistribute_default_set) Collapsed into zclient_redistribute_default. (zclient_redistribute_default_unset) ditto. (zclient_redistribute_default) Redistribute default set/unset. * zclient.h: delete zapi_ipv{4,6}_add, zapi_ipv{4,6}_delete. Add zapi_ipv{4,6}_route. delete zclient_redistribute_set/unset. Add zclient_redistribute. Ditto for zclient_redistribute_default_{set/unset}.
2004-05-032004-05-03 Daniel Roesen <dr@cluenet.de>paul
* bgp_fsm.c: (bgp_stop) Reset uptime only on transition from Established so that it reflects true downtime (rather time since last transition, eg Active->Idle)
2004-05-012004-05-01 rivo nurges <rix@estpak.ee>paul
* bgp_route.c: fix UNH IOL BGP-4.1.12f
2004-05-012004-05-01 Paul Jakma <paul@dishone.st>paul
* Revert the attempted clean-up of the dummy peer hack, reverts patchsets 435 (see 2004-02-17 below) and 456.
2004-04-20Update cease codes in bgp_debug.c file as well. Just update to patch fromhasso
Rivo.
2004-04-202004-04-16 rivo nurges <rix@estpak.ee>paul
* bgpd.h: update cease subcodes to draft-ietf-idr-cease-subcode-05 * bgpd.h, bgpd.c, bgp_route.c, bgp_route.h: fix UNH IOL BGP-4.1.6a
2004-03-22Readded SIGTERM handling into sigevent stuff. Fixes bugzilla #85.hasso
2004-03-20*** empty log message ***hasso
2004-03-19Fix warning.hasso
2004-03-162004-03-16 David Young <dyoung@pobox.com>gdt
* (many) reference <lib/version.h> rather than "version.h", because version.h is a generated file and not present in the source tree when using objdir builds. (committed by gdt) works fine with normal builds; didn't try objdir
2004-03-04Many warning fixes from PC Drew ([quagga-dev 940]) and removing using PAGERhasso
from vtysh ([quagga-dev 932]).
2004-02-172004-02-17 Paul Jakma <paul@dishone.st>paul
* bgpd.h: (bgp_peer) add fd_local and fd_accept file descriptor's, fd becomes a pointer to one of these. * bgpd.c: (global) adjust for fact that fd is now a pointer. (peer_create_accept) removed. * bgp_route.c: (global) adjust for change of peer fd to pointer * bgp_packet.c: (bgp_collision_detect) adjust and remove the "replace with other peer" hack. * bgp_network.c: (bgp_accept) Remove the dummy peer hack. Update peer->fd_accept instead. (global) Adjust fd references - now a pointer. * bgp_fsm.c: (global) adjust peer fd to pointer. (bgp_connection_stop) new function, to stop connection. (global) adjust everything which closed peer fd to use bgp_connection_stop().
2004-02-12Trivial fix from Bernd Leibing <bernd.leibing@kiz.uni-ulm.de>hasso
[quagga-dev 879].
2004-01-192004-01-19 Paul Jakma <paul@dishone.st>paul
* tests/test-sig.c: New file, regression test for sigevents. * lib/Makefile.am: add sigevent.{c,h} * (isis|rip|ripng|ospf|ospf6|bgp)d/\1_main.c: modify for sigevents. * zebra/main.c: ditto.
2003-12-232003-12-23 Krzysztof Oledzki <oleq@ans.pl>gdt
* bgp_network.c: drop privs on error cases (from [quagga-dev 438])
2003-12-222003-12-22 Christian Hammers <ch@lathspell.de>gdt
* configure.ac (and everywhere a regular file is opened for writing): use file permissions from configure rather than compiled-in umask.
2003-12-03Add support for --enable-exampledir to specify where to place examplegdt
files, defaulting to sysconfdir (matching previous behavior). This is needed to support (cleanly) NetBSD pkgsrc, which requires that example config files go in $(prefix)/share/examples/pkgname, rather than in $(prefix)/etc/pkgname.
2003-11-102003-11-10 Lorenzo Colitti <lorenzo@ripe.net>paul
* bgpd/bgp_dump.c: (bgp_dump_routes_entry) call dump_bgp_routes_attr() with a prefix.