summaryrefslogtreecommitdiff
path: root/ospfd
AgeCommit message (Collapse)Author
2005-02-082005-02-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_interface.h: Improve passive_interface comment. Add new multicast_memberships bitmask to struct ospf_interface to track active multicast subscriptions. Declare new function ospf_if_set_multicast. * ospf_interface.c: (ospf_if_set_multicast) New function to configure multicast memberships properly based on the current multicast_memberships status and the current values of the ospf_interface state, type, and passive_interface status. (ospf_if_up) Remove call to ospf_if_add_allspfrouters (this is now handled by ism_change_state's call to ospf_if_set_multicast). (ospf_if_down) Remove call to ospf_if_drop_allspfrouters (now handled by ism_change_state). * ospf_ism.c: (ospf_dr_election) Remove logic to join or leave the DRouters multicast group (now handled by ism_change_state's call to ospf_if_set_multicast). (ism_change_state) Add call to ospf_if_set_multicast to change multicast memberships as necessary to reflect the new interface state. * ospf_packet.c: (ospf_hello) When a Hello packet is received on a passive interface: 1. Increase the severity of the error message from LOG_INFO to LOG_WARNING; 2. Add more information to the error message (packet destination address and interface address); and 3. If the packet was sent to ospf-all-routers, then try to fix the multicast group memberships. (ospf_read) When a packet is received on an interface whose state is ISM_Down, enhance the warning message to show the packet destination address, and try to update/fix the multicast group memberships if the packet was sent to a multicast address. When a packet is received for ospf-designated-routers, but the current interface state is not DR or BDR, then increase the severity level of the error message from LOG_INFO to LOG_WARNING, and try to fix the multicast group memberships. * ospf_vty.c: (ospf_passive_interface) Call ospf_if_set_multicast for any ospf interface that may have changed from active to passive. (no_ospf_passive_interface) Call ospf_if_set_multicast for any ospf interface that may have changed from passive to active. (show_ip_ospf_interface_sub) Show multicast group memberships.
2005-02-082005-02-08 Paul Jakma <paul@dishone.st>paul
* ospf_packet.c: (various) Remove unneeded stream_set_putp abuse.
2005-02-022005-02-02 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_read) Fix bug: must check for state ISM_Down, not for event ISM_InterfaceDown. And improve the message by adding the interface flags. * if.h: Declare if_flag_dump. [backport candidate]
2005-01-302005-01-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_network.c: (ospf_sock_init) Save errno before calling ospfd_privs.change.
2005-01-292005-01-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_packet_add) If oi->obuf is NULL, print an error message and return. (ospf_read) If the interface state is ISM_InterfaceDown, issue a warning message and ignore the packet.
2005-01-102005-01-10 Greg Troxel <gdt@fnord.ir.bbn.com>gdt
* ospf_packet.h: Remove commented out definition of OSPF_MAX_PACKET; neither it or the uncommented one are used any more. * ospf_packet.c (ospf_make_ls_upd): Leave room for authentication when deciding if an update will fit. (ospf_packet_authspace): Factor out calculation of size required for authentication. (ospf_make_db_desc): Use ospf_max_packet, not OSPF_MAX_PACKET. Don't confuse readers that there is a macro.
2004-12-302004-12-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_network.c: Improve all setsockopt error messages to give detailed information on the arguments.
2004-12-292004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_db_desc) Reduce severity of "Negotiation done" messages from LOG_WARNING to LOG_INFO, since this seems to be normal.
2004-12-292004-12-29 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_read) Always look up the interface if ospf_recv_packet returns NULL ifp, since some platforms such as Solaris 8 appear to support ifindex retrieval but don't.
2004-12-29add XXX comment that perhaps we need to recover from short headers.gdt
2004-12-22Show sums of checksums in "show ip ospf" output. Okayed by Paul and Jameshasso
R. Leu (author of original idea).
2004-12-22Fix "show ip ospf" output. If router is configured as "translate-never", wehasso
say so - we can never be translator.
2004-12-22Show debug configuration in vtysh.hasso
2004-12-152004-12-15 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_interface.h: Declare new function ospf_default_iftype. * ospf_interface.c: (ospf_default_iftype) New function to centralize this logic in one place. * ospf_zebra.c: (ospf_interface_add) Use new function ospf_default_iftype. * ospf_vty.c: (no_ip_ospf_network,config_write_interface) Fix logic by using new function ospf_default_iftype.
2004-12-112004-12-11 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_db_desc) Should be static, not global. (ospf_hello,ospf_db_desc,ospf_ls_upd,ospf_ls_ack) Improve warning messages to include identifying information (e.g. router id). * ospf_nsm.c: (nsm_change_state) Improve info message to include router id and state names.
2004-12-09 * ospf_apiserver.c (ospf_apiserver_term): Obtain structgdt
ospf_apiserver * from listnode. Remove unused variables. Follows suggestion from Jay Fenlason.
2004-12-09ospf_apiserver_term:gdt
Remove unused variable. Add comment: this is seriously broken, and needs fixing. It appears likely to segfault if ever called. Comments please - should I make the fix I suggest in the comment? -gdt
2004-12-09add comments about warningsgdt
2004-12-082004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* *.c: Change level of debug messages to LOG_DEBUG.
2004-12-082004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* *.c: Change level of debug messages to LOG_DEBUG.
2004-12-082004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* *.c: Change level of debug messages to LOG_DEBUG.
2004-12-082004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* *.c: Change level of debug messages to LOG_DEBUG.
2004-12-082004-12-08 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* *.c: Change level of debug messages to LOG_DEBUG.
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
* ospf_packet.c: (ospf_db_desc) Reduce priority on a debug message from LOG_NOTICE to LOG_DEBUG.
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-302004-11-30 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* ospf_packet.c: (ospf_db_desc_proc) Fix spelling of packet in warning message and in comment. (ospf_db_desc) Warning message that a packet is being discarded should give the router id of the packet source. Fix spelling of packet in two warning messages. (ospf_ls_req) Warning message that a link state request is being discarded should give the router id of the neighbor that sent it.
2004-11-262004-11-26 Andrew J. Schorr <ajschorr@alumni.princeton.edu>ajs
* debug.[ch]: Remove unused files. * Makefile.am: Remove references to debug.c and debug.h * ospf_main.c: Remove #include "debug.h" (was not being used, and lib/debug.h has now been deleted).
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-17add note about alignment in LS updates due to opaque LSAs.gdt
2004-11-15Rationalize CMSG_SPACE usage:gdt
in lib/zebra.h, ensure that RFC3542-required CMSG_SPACE and CMSG_LEN are defined. Warn if alignment assumptions are made, since they are i386-centric. in lib/sockopt.h, declare that sockopt sizes are without CMSG_SPACE-required padding - just simple sizeof. in ospfd/ospf_packet.c, simply use CMSG_SPACE This should remove all instances of CMSG_ALIGN from the source code. This is a nonstandard, though rational, construct; quagga should use only those defines in RFC3542.
2004-11-152004-11-15 Paul Jakma <paul@dishone.st>paul
* ospf_{apiserver,te}.c: ospf_lsa_free's should be ospf_lsa_unlock.
2004-11-122004-11-12 Paul Jakma <paul@dishone.st>paul
* ospf_ia.c: (process_summary_lsa) Only an ABR has any reason to ignore stub area summary default. Even so it seems a strange check, add a comment to that effect.
2004-11-05spelling: s/supress/suppress/ajs
2004-11-042004-11-04 Paul Jakma <paul@dishone.st>paul
* ospfd.c: (ospf_network_match_iface) revert to previous network statement match behaviour.
2004-11-022004-11-02 Paul Jakma <paul@dishone.st>paul
* ospf_packet.c: (ospf_write_frags) remove iov arg, msg already points to it. Add convenience pointer to msg->msg_iov[1], and use this, fixing the unfortunate borkenness introduced in moving of this code to a function. (ospf_write) remove iovp and fix up call to previous. (ospf_ls_upd_packet_new) cast size to long int - unfortunately glibc's size_t format modifier is not portable.
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
* ospf_packet.c: (ospf_ls_upd_packet_new) Format for size_t should be ld. * ospf_zebra.c: (ospf_distribute_list_update_timer) Ugly misuse of THREAD_ARG to store an integer, but it should at least use same same type to retrieve the value. Assert value is sane.
2004-10-312004-10-31 Paul Jakma <paul@dishone.st>paul
* ospf_packet.c: (ospf_write_frags) Add debug output (ospf_write) set type early, so we can pass it to ospf_write_frags. (ospf_ls_upd_packet_new) print size in debug output when too large packet is encountered.
2004-10-22- credit rix for fixing openbsdpaul
2004-10-222004-10-22 Paul Jakma <paul@dishone.st>paul
* ospfd/ospf_packet.c: setsockopt_pktinfo -> setsockopt_ifindex * zebra/irdp_main.c: ditto
2004-10-222004-10-22 Paul Jakma <paul@dishone.st>paul
* ospf_network.c: (ospf_sock_init) call neutral setsock_ifindex() function. * ospf_packet.c: (ospf_read) manually look up ifindex if system could not have returned one, eg openbsd.
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 initializing smux connection configurable - "smux peer OID" commandhasso
initializes connection, and "no smux peer" command terminates it. Fixes bugzilla #47 and #112.
2004-10-13Unbreak compilation with ospfapi disabled. We should seriously think abouthasso
reducing various configure options.
2004-10-12Unbreak ospfclient compilation.hasso
2004-10-11Disable ospfapi init by default.hasso
2004-10-112004-10-11 Paul Jakma <paul@dishone.st>paul
* (global) Const char update and signed/unsigned fixes. * (various headers) size defines should be unsigned. * ospf_interface.h: remove duplicated defines, include the authoritative header - though, these defines should probably be moved to a dedicated header, or ospfd.h. * ospf_lsa.h: (struct lsa) ls_seqnum should be unsigned. * ospf_packet.c: (ospf_write) cast result of shift to unsigned.
2004-10-112004-10-11 Paul Jakma <paul@dishone.st>paul
* ospf_dump.c: (ospf_ip_header_dump) Assume header is in host order remove ntohs that should have dissappeared. Take struct ip as argument, caller has to know there's an IP header at start of stream anyway. * ospf_dump.h: update declaration of ospf_ip_header_dump. * ospf_packet.c: (ospf_write) correct call to sockopt_iphdrincl_swab_htosys which was munging the header. (ospf_recv_packet) ip_len is needed for old OpenBSD fixup. (ospf_read) sockopt_iphdrincl_swab_systoh ip header as soon as we have it.