| Age | Commit message (Collapse) | Author | 
|---|
|  | * log.c: (syslog_sigsafe) Reduce scope of syslog_fd: it is accessed
	  inside this function only.
	  (open_crashlog) New function to open /var/tmp/quagga.<daemon>.crashlog
	  with flags O_WRONLY|O_CREAT|O_EXCL to save some crash info.
	  (zlog_signal,_zlog_assert_failed) Increase logging priority from
	  LOG_ERR to LOG_CRIT.  If no file logging is configured, try to use
	  open_crashlog to create a crash logfile.
	  (zlog_backtrace_sigsafe) If a crashlog file descriptor is open,
	  dump a backtrace to that file. | 
|  | * 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] | 
|  | transparent-nexthop" commands.
	[merge from GNU Zebra] | 
|  | [merge from GNU Zebra] | 
|  | community-list cleanup.
	[merge from GNU Zebra] | 
|  | -> "disable-connected-check".
	[merge from GNU Zebra] | 
|  | bgpd.[ch]: Add BGP_INFO_STALE flag and end-of-rib support. "bgp
	  graceful-restart" commands added. Show numbers of individual
	  messages in "show ip bgp neighbor" command. Final pieces of graceful
	  restart.
	[merge from GNU Zebra] | 
|  | capability route-refresh" commands. Route refresh capability is sent
	  anyway now. Preserve dummy deprecated commands.
	[merge from GNU Zebra] | 
|  | draft - ie. "neighbor version 4-" commands. Preserve dummy "neighbor
	  version" command as deprecated.
	[merge from GNU Zebra] | 
|  | maximum-prefix limit" feature support.
	[merge from GNU Zebra] | 
|  | * bgpd.[ch], bgp_nexthop.c, bgp_snmp.c: Remove useless bgp_get_master()
          function.
        * bgp_packet.c: MP AFI_IP update and withdraw parsing.
        * bgp_fsm.c: Reset peer synctime in bgp_stop(). bgp_fsm_change_status()
          is better place to log about peer status change than bgp_event().
          Log in bgp_connect_success().
        * bgp_vty.c: Fix typo in comment.
        * bgp_attr.c: Better log about unknown attribute.
	[merge from GNU Zebra] | 
|  | * daemon.c: (daemon) Replace perror with zlog_err.
	* vty.c: (vty_serv_un) Replace perror with zlog_err.
	* ripd.c: (rip_create_socket) Replace perror with zlog_err.
	* ioctl.c: (if_ioctl,if_ioctl_ipv6,if_get_flags) Replace perror with
	  zlog_err.
	* ioctl_solaris.c: (if_ioctl,if_ioctl_ipv6) Replace perror with
	  zlog_err. | 
|  | * ripng_interface.c: (ripng_multicast_join) Save errno before calling
	  ripngd_privs.change. | 
|  | * ripd.c: (rip_create_socket) Save errno before calling
	  ripd_privs.change. | 
|  | * ospf_network.c: (ospf_sock_init) Save errno before calling
	  ospfd_privs.change. | 
|  | * buffer.h: Fix comment on buffer_getstr to reflect that it now
	  uses XMALLOC.
	* buffer.c: (buffer_getstr) Use XMALLOC(MTYPE_TMP) instead of malloc.
	* filter.c: (access_list_remark,ipv6_access_list_remark) Use
	  argv_concat instead of buffer_getstr.
	* if.c: (interface_desc) Use argv_concat instead of buffer_getstr.
	* plist.c: (ip_prefix_list_description,ipv6_prefix_list_description)
	  Use argv_concat instead of buffer_getstr.
	* bgp_filter.c: (ip_as_path,no_ip_as_path) Use argv_concat instead
	  of buffer_getstr.
	* bgp_route.c: (bgp_show_regexp) Fix memory leak: need to free string
	  returned by buffer_getstr.
	  (bgp_show_community) Must use XFREE instead of free on string
	  returned by buffer_getstr.
	* bgp_routemap.c: (set_community) Must use XFREE instead of free
	  on string returned by buffer_getstr.
	* bgp_vty.c: (neighbor_description) Use argv_concat instead of
	  buffer_getstr. | 
|  | * if_ioctl_solaris.c: (interface_list_ioctl) Save errno before calling
	  zserv_privs.change.
	* ioctl{,_solaris}.c: (if_ioctl,if_ioctl_ipv6) Save errno before calling
	  zserv_privs.change.
	* ipforward_solaris.c: (solaris_nd) Save errno before calling
	  zserv_privs.change.
	* irdp_main.c: (irdp_sock_init) Save errno before calling
	  zserv_privs.change.
	[backport candidate] | 
|  | * rt_netlink.c: (netlink_socket,netlink_request,netlink_parse_info,
	  netlink_talk) Save errno before calling zserv_privs.change.
	  [backport candidate] | 
|  | * 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. | 
|  | * vtysh.h: Remove obsolete VTYSH_INDEX_* defines.  Fix many prototypes
	  for functions with no arguments (must specify argument list as void).
	* vtysh.c: Enhance vtysh_client array to include the daemon's name
	  and bitmask and socket path (in addition to the fd).  This allows
	  us to use loop constructs for various operations that need to be
	  applied to all client daemons, and it facilitates better error
	  messages.  Also fix some prototypes with void argument lists.
	  (vclient_close) Issue a warning message indicating which daemon's
	  socket is being closed.
	  (vtysh_execute_func,vtysh_config_from_file) Use a for loop to
	  call vtysh_client_execute.
	  (vtysh_write_terminal,write_config_integrated) Use a for loop to
	  call vtysh_client_config.
	  (vtysh_write_memory) Use a for loop to call vtysh_client_execute.
	  (vtysh_show_daemons) Use a for loop.
	  (vtysh_connect) The struct vtysh_client is now statically initialized,
	  so do not initialize it here.
	  (vtysh_connect_all) Use a for loop to call vtysh_connect.  Set
	  ripd_client pointer for use in vtysh_exit_ripd_only. | 
|  | * lib/buffer.h: Document behavior of buffer_getstr function.
	* lib/buffer.c: (buffer_getstr) Fix bug: must handle case where
	  the string extends beyond the head struct buffer_data. | 
|  | * lib/command.h: Document behavior of argv_concat function.
	* lib/command.c: (argv_concat) Calculate total string length first so
	  we can call malloc just once (instead of realloc'ing to add each
	  string element).
	  (do_echo,config_logmsg) Allow for possible NULL return value from
	  argv_concat. | 
|  | * ospf6_asbr.c: Add "hsls" to the zroute_name const char array. | 
|  | * configure.ac: Bump version to 0.99.0
	* doc/quagga.info: Version bump (autogenerated) | 
|  | if old one is flaged as BGP_INFO_ATTR_CHANGED. | 
|  | * zebra/rt_netlink.c: ignore wireless newlink netlink messages. | 
|  | use it as well.
        * vtysh/vtysh.c: Implement walkup in node tree for vtysh as it already
          works in vty. | 
|  | "integrated-vtysh-config". | 
|  | * log.h: Test for SA_SIGINFO to see whether zlog_signal takes final
	  two args (siginfo and program_counter).
	* log.c: (hex_append) Include this function only if SA_SIGINFO or
	  HAVE_GLIBC_BACKTRACE is defined.
	  (zlog_signal) Final two args (siginfo and program_counter) now
	  depend on whether SA_SIGINFO is defined on this platform.
	* sigevent.c: (program_counter) Do not include this function if
	  SA_SIGINFO is not defined on this platform.
	  (exit_handler,core_handler) Test for SA_SIGINFO to decide whether
	  2nd & 3rd arguments are present and to decide how to invoke
	  zlog_signal.
	  (trap_default_signals) Test for SA_SIGINFO and invoke sigaction
	  appropriately. | 
|  | functions and some tiny related fixes. No functional changes. | 
|  | case of /proc being used. I don't have others to test with at the
	  moment. | 
|  | * log.h: Change prototype for zlog_backtrace_sigsafe to take additional
	  program_counter argument.
	* log.c: (zlog_backtrace_sigsafe) Add additional program_counter
	  argument.  If it is non-NULL, use backtrace_symbols_fd to resolve
	  the address.
	  (zlog_signal) Call zlog_backtrace_sigsafe with additional
	  program_counter argument.
	[pullup candidate] | 
|  | configured or not. Being not configured is even better reason to
	  do it. | 
|  | [pullup candidate] | 
|  | to walk up in the node tree if called from vtysh. Different daemons
	  might have commands with same syntax in different nodes (for example
	  "router-id x.x.x.x" commands in zebra/ospfd/ospf6d daemons).
	* vtysh.c: Reflect changes in lib. cmd_execute_command() should know
	  now that it's called from vtysh and must not attempt to walk up in
	  the node tree.
	[pullup candidate] | 
|  | * redhat/quagga.spec.in: Fix postun script to avoid misleading error
	  message saying the postun scriptlet failed when watchquagga
	  is not running.
          (pullup candidate) | 
|  | * command.c (print_version): Do not bother even to examine host.name,
	  since it is always NULL when this function is called from main. | 
|  | * command.c (print_version): Don't print host.name if it is NULL.
        Fixes segfault on Solaris reported by Goetz von Escher <goetz@open.ch>
(pullup candidate) | 
|  | last release.. | 
|  | * configure.ac: Test for header file <ucontext.h> (for use in
	  signal processing).
	* sigevent.c: (trap_default_signals) Use the SA_SIGINFO flag to
	  pass additional siginfo_t and ucontext_t arguments to core_handler
	  and exit_handler.
	  (core_handler,exit_handler) Now invoked with 3 arguments (using
	  SA_SIGINFO).  Pass additional info to zlog_signal.
	  (program_counter) New function to find program counter in ucontext_t,
	  needs to be enhanced to support more platforms (currently works only
	  on Linux/x86).
	* log.h: Change the zlog_signal prototype to add new arguments
	  siginfo_t * and program_counter.
	* log.c: (zlog_signal) Add new arguments siginfo and program_counter.
	  Include si_addr and program counter (if non-NULL) in message.
	  And remove #ifdef HAVE_GLIBC_BACKTRACE around hex_append, since
	  that is now used to render the si_addr and PC pointers. | 
|  | * configure.ac: If configure is invoked with --enable-snmp, but
	  the configure script is unable to find SNMP support on the platform,
	  then configure should give an error message and exit. | 
|  | * redhat/quagga.spec.in: Pass --enable-gcc-rdynamic to configure
	  to get gcc to link with -rdynamic for better backtraces.
	  When the rpm is upgraded, the restart logic now works as follows:
	  1. stop watchquagga; 2. stop all routing daemons; 3. restart zebra
	  if it was running; 4. start all routing daemons that were running;
	  and 5. start watchquagga if it was running. | 
|  | * watchquagga.c: (run_job) Fix bug: delay.tv_sec was being used
	  without having been initialized when the "force" argument was true.
	  (try_restart) When phased restart is stopping the routing daemons,
	  it should tell run_job to update the restart interval.
	  (phase_check) In final step of phased restart when the routing
	  daemons are being started again, tell run_job not to update
	  the restart interval (this is now done when the daemons are
	  stopped). | 
|  | * zebra.h: If not C99 and no va_copy macro available, fall back to
	  memcpy (solves a build problem on FreeBSD 4.x). | 
|  | * texinfo.tex: Updated to a version which understands @{ and @}
	* vtysh.texi: Add node name for @section
	* quagga.info: updated build of autogenerated file | 
|  | * 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. | 
|  | * configure.ac: Bump version to 0.98.0
	* doc/quagga.info: Version bump (autogenerated) | 
|  | * configure.ac: Bump version to 0.97.5
	* doc/quagga.info: autogenerated, version bump. | 
|  | * zserv.c: (zebra_accept) Comment out setting of socket to NONBLOCK
          for now, as we dont actually deal with with resending.... See
          bugzilla #122, fix from wawa@yandex-team.ru (Vladimir Ivanov).
	* kernel_socket.c: (routing_socket) ditto. | 
|  | * bgp_packet.c: (bgp_write) set socket to nonblock while writing
          this should be generalised. See bugzilla #102. Fix supplied by
	  wawa@yandex-team.ru (Vladimir Ivanov). |